Docker儲存Volume使用
1.使用docker自定義data volume
在mysql官方映象的Dockerfile中定義了以下volume
VOLUME /var/lib/mysql
所以如果不指定-v引數docker會自定一個volume
docker run -d --name mysql1 -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql
檢視volume如下
docker volume ls
DRIVER VOLUME NAME
local efcfec6f13b6efc66be2f0f73b5895b7b2324937e993e375afd1018443ca5f5b
進一步檢視詳情
docker volume inspect efcfec6f13b6efc66be2f0f73b5895b7b2324937e993e375afd1018443ca5f5b
可以看到volume的情況:
[
{
"CreatedAt": "2018-06-08T01:14:48Z",
"Driver": "local",
"Labels": null,
"Mountpoint": "/var/lib/docker/volumes/efcfec6f13b6efc66be2f0f73b5895b7b2324937e993e375afd1018443ca5f5b/_data",
"Name": "efcfec6f13b6efc66be2f0f73b5895b7b2324937e993e375afd1018443ca5f5b",
"Options": null,
"Scope": "local"
}
]
由於不方便使用所以我們使用以下定義volume名稱的方法來使用
2.建立自定義volume名稱的容器
docker run -d --name mysql2 -v mysql:/var/lib/mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql
-v {指定的data volume的名稱}:{容器內要掛載的路徑(同Dockerfile中VOLUME定義的路徑)}
檢視volume如下
docker volume ls
DRIVER VOLUME NAME
local efcfec6f13b6efc66be2f0f73b5895b7b2324937e993e375afd1018443ca5f5b
local mysql
3.進入mysql2容器增加資料
docker exec -it mysql2 /bin/bash
mysql -u root
create database test;
建立一個資料庫;
4.讓其它容器使用該volume
docker run -d --name mysql3 -v mysql:/var/lib/mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql
5.進入mysql3檢查資料庫是否存在
6.如果 Dockerfile中不使用VOLUME指令則-v的用法如下
-v {宿主機路徑}:{docker容器中要掛載的路徑}
此方法可以打通開發流程
相關文章
- 理解Docker(8):Docker 儲存之卷(Volume) (轉)Docker
- Kubernetes-儲存卷Volume
- kubernetes系列(十三) - 儲存之Volume
- K8S之Volume儲存K8S
- 白話理解和使用DOCKER VOLUMEDocker
- 使用 Docker 搭建 minio 檔案儲存Docker
- Docker storage儲存Docker
- docker 儲存映象Docker
- docker容器儲存Docker
- 初次學習 Docker Volume 的基本使用 (四)Docker
- Docker(十三)-Docker save and load映象儲存Docker
- docker建立volume 指定volume 匯出image 匯入imageDocker
- docker映象複製到自己的儲存庫使用Docker
- docker儲存配置與管理Docker
- 修改docker的預設儲存位置及映象儲存位置Docker
- docker更換容器儲存位置Docker
- Docker --volume-資料持久化Docker持久化
- Docker_05 容器-修改及儲存Docker
- 修改docker映象儲存位置的方法Docker
- 利用Docker volume修改Nginx Docker映象裡index.htmlDockerNginxIndexHTML
- Docker Toolbox替換預設docker machine的儲存位置DockerMac
- Docker 基礎知識 - 使用卷(volume)管理應用程式資料Docker
- Docker run OGG Classic Architecture container from CIFS with docker-volume-netshDockerAI
- Longhorn 企業級雲原生分散式容器儲存-券(Volume)和節點(Node)分散式
- Docker映象的目錄儲存講解Docker
- Docker 基礎-映象&容器&網路&儲存Docker
- Docker筆記2——儲存自己的LNMPDocker筆記LNMP
- 本地儲存localStorage使用
- 在Docker中,如何更改Docker的預設儲存設定?Docker
- 細述Kubernetes和Docker容器的儲存方式Docker
- Docker配置本地映象與容器的儲存位置Docker
- 聊聊 Docker 的儲存驅動 Overlay2Docker
- docker檔案系統分層儲存原理Docker
- 040、Docker managed volume(2019-03-01 週五)Docker
- 塊儲存 檔案儲存 物件儲存物件
- 使用SpringBoot JPA進行自定義的儲存及批量儲存Spring Boot
- docker筆記44-rbd塊儲存的建立Docker筆記
- docker overlay儲存驅動介紹(傳送門)Docker