Docker 06 持久化到主机本地系统。也就是常说的挂载
命名卷挂载方式
命令卷:将命名卷视为简单的数据桶。Docker 维护磁盘上的物理位置,您只需要记住卷的名称。每次使用卷时,Docker 都会确保提供正确的数据。
# 创建命名卷
docker volume create todo-db
# 添加-v标志以指定卷安装。我们将使用命名卷并将其挂载到/etc/todos,这将捕获在该路径创建的所有文件。
# -v 主机挂载的目录(由Docker管理位置):挂载到Docker镜像容器的指定目录下。
docker run -dp 3000:3000 -v todo-db:/etc/todos getting-started
# 查看 命名卷 的挂载到主机的目录位置信息
# 语法:docker volume inspect <命名卷名称>
docker volume inspect todo-db
# Mountpoint是存储数据的磁盘上的实际位置
绑定挂载方式
docker run -dp 3000:3000 \
-w /app -v "$(pwd):/app" \
node:12-alpine \
sh -c "yarn install && yarn run dev"
# -dp 3000:3000- 和之前一样。以分离(后台)模式运行并创建端口映射
# -w /app- 设置“工作目录”或命令将运行的当前目录
# -v "$(pwd):/app"- 将容器中主机的当前目录绑定挂载到/app目录中
# node:12-alpine- 要使用的图像。请注意,这是来自 Dockerfile 的应用程序的基础镜像
# sh -c "yarn install && yarn run dev"- 命令。我们正在使用sh(alpine 没有bash)启动一个 shell 并运行yarn install以安装所有依赖项,然后运行yarn run dev. 如果我们查看package.json,我们会看到dev脚本正在启动nodemon。
docker logs -f <container)id>用于查看容器启动的日志信息。
卷类型比较

参考;
复制请注明出处,在世界中挣扎的灰太狼

浙公网安备 33010602011771号