docker資料卷管理 管理應用程式資料

2021-08-21 07:55:47 字數 1419 閱讀 9443

volume、bind、mount

將docker主機資料掛載到容器中

docker提供三種不同的方式將資料從宿主機掛載到容器中:volumes、bind mounts和tmpfs

volumes:docker管理宿主機檔案系統的一部分(/var/lib/docker/volumus)

bind mounts:可以儲存在宿主機系統的任意位置

tmpfs:掛載儲存在宿主機系統的記憶體中,而不會寫入宿主機的檔案系統

檢視volume 

# docker volume ls
建立乙個volume,建立的卷位置位於/var/lib/docker/volumes

# docker volume create nginx-vol

檢視volume卷的詳細資訊

# docker volume inspect nginx-vol
使用卷建立容器(可以多個容器共用乙個資料卷,資料共享),如果卷沒有指定,會自動建立乙個匿名卷
# docker container run -itd --name=nginx-test -p 8082:80 --mount src=nginx-vol,dst=/usr/share/nginx/html nginx

# docker container run -itd --name=nginx-test -p 8082:80 -v nginx-vol:/usr/share/nginx/html nginx

刪除所有的容器
# docker container rm -f $(docker ps -q -a)
清理volume卷:
# docker container stop nginx-test 

# docker container rm nginx-test

# docker volume rm nginx-vol

繫結乙個宿主機上已經存在的目錄,用來建立乙個容器,宿主機目錄必須存在
# docker container run -itd --name=nginx-test --mount type=bind,src=/opt/wwwroot,dst=/usr/share/nginx/html nginx

# docker container run -itd --name=nginx-test -v /opt/wwwroot:/usr/share/nginx/html nginx

驗證繫結是否成功
# docker container inspect nginx-test
清理
# docker container stop nginx-test 

# docker container rm nginx-test

Docker 資料卷管理

資料卷介紹 宿主機無法直接訪問容器中的檔案 容器中的檔案沒有持久化,導致容器刪除後,檔案資料也隨之消失 容器之間無法直接訪問相互的檔案 為解決這些問題,docker加入了資料卷 volumes 機制,能很好解決上面問題,以實現 容器與主機之間,容器與容器之間共享檔案 容器中的資料持久化 將容器中的資...

Docker 資料卷管理

建立資料卷 管理資料卷許可權 1.docker run v hostdir guestdir privileges2.卷共享應用,配置,資料等 掛載宿主機檔案 使用資料卷容器共享資料 1.建立資料卷容器 docker create v shiyanloudata name shiyanloudb u...

swarm管理應用資料

將宿主機資料掛載到容器 volume 建立容器和資料卷 docker service create mount type volume src nginx vol dst usr share nginx html replicas1 name test01 nginx檢視test01容器部署在那台機...