23. docker 数据持久化 bind mounting
1. bind mounting 和 data volume 的区别
data volume 需要在 Dockerfile 定义 Volume
bind mounting 只需要 -v 指明 容器外部文件夹和容器映射文件夹的对应关系即可 将本地的文件映射到容器内
2. bind mouting 的使用
编写 Dockerfile
FROM nginx:latest base image 为 nginx
WORKDIR /usr/share/nginx/html 工作目录为 /usr/share/nginx/html
COPY index.html index.html 复制当前文件夹的index.html 到工作目录
创建自定义镜像
docker build -t docker-nginx .
创建 nginx 容器
docker run -d -p 80:80 --name web docker-nginx
查看容器情况
docker ps
访问容器
curl 127.0.0.1
停止并删除 web 容器
docker rm -f web
创建一个 含 bind mounting 的 容器 将本地的文件映射到容器内
-v $(pwd):/usr/share/nginx/html 将本地的当前目录映射到 容器的/usr/share/nginx/html 下
当在容器内或者容器外更改 映射文件夹内的内容时 两端都会改变
docker run -d -p 80:80 -v $(pwd):/usr/share/nginx/html --name web docker-nginx