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 才能生效。
原文地址:https://www.cnblogs.com/famine/p/13332023.html