nginx docker安装(docker-compose方式)(挂载配置路径) 作者:马育民 • 2020-07-26 16:23 • 阅读:10449 # 安装 这次安装,挂载配置文件路径,这样配置文件更容易修改,不需要进入容器里面 ### 创建目录 在`root/docker_nginx`目录下创建`mkdir conf.d`文件夹 ``` cd /root/docker_nginx ``` ``` mkdir conf.d ``` ### 创建docker-compose.yml 在`/root/docker_nginx`目录下创建`docker-compose.yml`文件 ``` vim docker-compose.yml ``` 内容如下: ``` version: '3' services: nginx: image: nginx # 镜像 container_name: nginx # 指定容器名称 ports: # bridge网络模式,指定映射端口 - "8000:80" # network_mode: "host" # 指定网络模式 restart: always # 当docker服务启动时,容器总是跟着启动 volumes: - /root/docker_nginx/conf.d:/etc/nginx/conf.d # 挂载配置文件路径 ``` 将宿主机`/root/docker_nginx/conf.d`映射到容器的`/etc/nginx/conf.d`目录 ### 关闭并删除之前的nginx ``` docker-compose down ``` ### 启动 ``` docker-compose up -d ``` 执行结果: ``` Creating network "docker_nginx_default" with the default driver Creating nginx ... done ``` ### 查看 ``` docker-compose ps ``` ### 访问 打开浏览器访问 http://106.13.165.100:8000/ 打开页面错误,因为没有`default.conf`,nginx不知道如何处理请求 # 创建 default.conf 在宿主机的 `/root/docker_nginx/conf.d` 目录下,创建 default.conf 文件 ``` vim /root/docker_nginx/conf.d/default.conf ``` 内容如下: ``` server { listen 80; # 监听所有ipv4的80端口 # listen [::]:80; # 监听所有ipv6的80端口 server_name localhost; # 匹配域名。主机绑定多个域名时使用 #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { # 通用匹配路径 root /usr/share/nginx/html; # 注意:是容器内路径 index index.html index.htm; # 默认首页是 index.html 或 index.htm } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # #error_page 500 502 503 504 /50x.html; # http错误代码对应的错误页面是50x.html #location = /50x.html { # root /root/docker_nginx/html; # 50x.html的位置 #} } ``` # 重新加载 or 重启 ### 重新加载配置文件 如果不想重启nginx docker,那么需要进入容器,重新加载配置文件 ``` docker exec -it nginx bash ``` ``` nginx -s reload ``` ### 重启nginx docker 重启的方式,比重新加载要简单些 ``` docker-compose restart ``` # 测试 打开浏览器访问 http://106.13.165.100:8000/ 能够正常访问页面 原文出处:http://malaoshi.top/show_1EF5xZ3xPFpI.html