Docker目录映射
docker常用命令:
docker ps // 查看所有正在运行容器
docker stop containerId // containerId 是容器的ID
docker ps -a // 查看所有容器 $ docker ps -a -q // 查看所有容器ID
docker stop $(docker ps -a -q) // stop停止所有容器
docker rm $(docker ps -a -q) // remove删除所有容器
docker restart 容器id //重启容器
docker run -d -p 8008:80 --name nginx-name nginx:1.1.1 启动一个新docker实例(nginx:1.1.1是版本号)
目录映射:
实例:
docker run -p 8079:80 --name nginx-test
--privileged=true
-v /testdocker/default.conf:/etc/nginx/conf.d/default.conf
-v /testdocker/html:/usr/share/nginx/html -d nginx:1.14
命令解读:
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
--privileged=true 关闭安全权限,否则你容器操作文件夹没有权限
-v 挂载目录为:主机目录:容器目录,在创建前容器是没有指定目录时,docker 容器会自己创建
实战过程:
在服务器添加一个测试文件夹,放置nginx测试用例需要的nginx.conf配置文件,和一个默认页面index.html如图:
执行:
docker run -p 8079:80 --name nginx-test
--privileged=true
-v /testdocker/default.conf:/etc/nginx/conf.d/default.conf
-v /testdocker/html:/usr/share/nginx/html -d nginx:1.14
成功后如图:
- 测试挂载的目录文件是否可用:直接修改index.html内容后,直接成功生效。
- 修改default.conf 文件需要重启容器:docker restart 容器id 才能生效。