• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

docker部署nginx,具象挂载导致没办法启动问题

武飞扬头像
猴子运维
帮助1

目录

现象

处理办法

方法一:

方法二:

现象

docker run -it -P -v /opt/ceshi/nginx:/etc/nginx -v /opt/ceshi/html:/usr/share/nginx/html nginx:1.20 bash

docker通过-v参数具象挂载启动nginx如上:-v /opt/ceshi/conf:/etc/nginx   -v /opt/ceshi/html:/usr/share/nginx/html;(docker-compose 通过volumes模块挂载也一样)

docker会自动在主机创建conf和html空目录,并且覆盖容器内部的目录,导致容器内部目录被清空,nginx读取不到/etc/nginx/nignx.conf文件,则无法启动。

处理办法

方法一:

通过不挂载方式启动nginx镜像。

docker run --name=nginx -itd -P nginx:1.20 bash  

将容器内部的文件拷贝出来

  1.  
    docker cp [nginx容器ID]:/etc/nginx /opt/ceshi
  2.  
    docker cp [nginx容器ID]:/etc//usr/share/nginx/html /opt/ceshi

停止上面容器并删除

  1.  
    docker stop [容器id] ## docker ps 可查看容器id
  2.  
    docker rm [容器id]

 重新启动容器

docker run -it -P -v /opt/ceshi/nginx:/etc/nginx -v /opt/ceshi/html:/usr/share/nginx/html nginx:1.20 bash

方法二:

手动创建docker要挂载的目录,从其他项目将文件拷到已创建的目录中,然后启动容器,注意:挂载的目录得一致。

docker run -it -P -v /opt/ceshi/nginx:/etc/nginx -v /opt/ceshi/html:/usr/share/nginx/html nginx:1.20 bash

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfiikgk
系列文章
更多 icon
同类精品
更多 icon
继续加载