docker启动nginx容器
参考 使用docker安装nginx - 能量熊 - 博客园 (cnblogs.com)
docker run -d --name mynginx -p 80:80 231d
- -d 指定容器以守护进程方式在后台运行
- –name 指定容器名称,此处我指定的是mynginx
- -p 指定主机与容器内部的端口号映射关系,格式 -p [宿主机端口号]:[容器内部端口],此处我使用了主机80端口,映射容器80端口
- 231d 是nginx的镜像IMAGE ID前4位
可以看到容器启动成功
直接访问 ip http://192.168.2.128/ 就是成功
创建挂载目录
/data/nginx 目录下执行 mkdir -p ./nginx1/{conf,html,logs}
创建挂载目录
将容器内的nginx.conf
与default.conf
文件分别拷贝到主机/data/nginx/nginx1与目录/data/nginx/nginx1/conf下
分别执行
docker cp 容器id:/etc/nginx/nginx.conf ./
docker cp 容器id:/etc/nginx/conf.d/default.conf ./conf/
现在的目录结构:
目录结构:
/data - /nginx - /nginx1 - /conf
/html
/logs
/nginx.conf
关闭容器
docker stop mynginx
再删除容器
docker rm mynginx
最后执行创建容器设置挂载 命令,重新创建nginx容器
0346349a1a64最后的是镜像id
- -v 挂载目录,格式 -v: 表示将主机目录与容器目录之间进行共享,
- –privileged=true 容器内部对挂载的目录拥有读写等特权
docker run -d --name mynginx -p 80:80 -v /data/nginx/nginx1/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/nginx1/logs:/var/log/nginx -v /data/nginx/nginx1/html:/usr/share/nginx/html -v /data/nginx/nginx1/conf:/etc/nginx/conf.d --privileged=true 0346349a1a64
可以看到成功启动容器
最后直接访问 http://192.168.2.128/ 是403,不是报错而是没有资源
在挂载的目录上 /data/nginx/nginx1/html 新建静态资源 index.html ,内容 hello nginx
vi index.html
hello nginx
再次访问就可以了,这里我的虚拟机是 的ip是 192.168.2.128