千家信息网

怎么在Docker中部署nginx并修改配置文件

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关怎么在Docker中部署nginx并修改配置文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。直接一行命令搞定:docke
千家信息网最后更新 2026年11月02日怎么在Docker中部署nginx并修改配置文件

这篇文章将为大家详细讲解有关怎么在Docker中部署nginx并修改配置文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

直接一行命令搞定:

docker run \ --name nginx-health-web-pc \ -d -p 6800:80 \ -v /usr/docker/nginx/html:/usr/share/nginx/html \ nginx

运行启动不亦乐乎~~~~~这时候忽然前端过来说:"你的nginx里得加一个配置",顺带还告诉你:"某某某以前就是这样配的",

此时好胜的你当然不能拒绝,但是真正配置起来还是要费点心思的,一般情况下docker启动时进行配置,只要把配置文件的目录挂载出来就可以,简洁方便,但是nginx却是先加载一个主配置文件nginx.conf,在nginx.conf里再加载conf.d目录下的子配置文件(一般最少一个default.conf文件)。这比单独挂载一个目录麻烦了不少,但只要思路清晰,倒也不难。

我们先看挂载好的命令:

启动docker的命令

docker run \ --name myNginx \ -d -p 80:80 \ -v /usr/docker/myNginx/html:/usr/share/nginx/html \ -v /etc/docker/myNginx/nginx.conf:/etc/nginx/nginx.conf:ro \ -v /etc/docker/myNginx/conf.d:/etc/nginx/conf.d \ nginx

这里有几个注意事项:

(1)第一个"-v",是项目位置,把项目放到挂载到的目录下即可;

(2)第二个"-v",是挂载的主配置文件"nginx.conf",注意"nginx.conf"文件内有一行"include /etc/nginx/conf.d/*.conf;",这个include指向了子配置文件的路径,此处注意include后所跟的路径一定不要出错。

(3)第三个"-v",把docker内子配置文件的路径也挂载了出来,注意要与(2)中include指向路径一致

(4)重点强调一下,nginx.conf是挂载了一个文件(docker是不推荐这样用的),conf.d挂载的是一个目录

我们先启动一下,可以发现是有问题的,因为配置文件还没有。

配置配置文件

我们找到常规方法安装的nginx时生成的配置文件(一般以"/etc/nginx"下),对应上面启动命令中的挂载位置,把主配置文件nginx.conf放到对应位置"/etc/docker/myNginx/nginx.conf",把子配置文件"default.conf"放到"/etc/docker/myNginx/conf.d"目录下

重新运行启动命令,发现已经好了,至此docker中的文件已经可以随意配置,跟原生安装是一模一样的

思路:配置时一定要铆定一个思路:挂载出来的文件运行时是要加载到docker进程中去的!这样就不容易混淆。

---------------------------------------------------分隔线-------------------------------------------------------

贴出我的配置文件:

nginx.conf

user root;worker_processes 1; error_log /var/log/nginx/error.log warn;pid  /var/run/nginx.pid;  events { worker_connections 1024;}  http { include  /etc/nginx/mime.types; default_type application/octet-stream;  log_format main '$remote_addr - $remote_user [$time_local] "$request" '      '$status $body_bytes_sent "$http_referer" '      '"$http_user_agent" "$http_x_forwarded_for"';  access_log /var/log/nginx/access.log main;  sendfile  on; #tcp_nopush  on;  keepalive_timeout 65;  autoindex on;  #gzip on;  include /etc/nginx/conf.d/*.conf; client_max_body_size 100M; client_header_buffer_size 128k; large_client_header_buffers 4 128k;}

default.conf

server { listen  80; server_name localhost;  #charset koi8-r; #access_log /var/log/nginx/log/host.access.log main;  location / {  root /usr/nginx/dacheng-wechat-web;  # root /usr/nginx/html;  index index.html index.htm;  autoindex on; try_files $uri /index/index/page.html;  #try_files $uri /index/map/page.html; }  #error_page 404    /404.html;  # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html {  root /usr/share/nginx/html; }  # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #}  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root   html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include  fastcgi_params; #}  # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #}}

关于怎么在Docker中部署nginx并修改配置文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

配置 文件 目录 命令 路径 位置 思路 运行 一行 内容 指向 文章 更多 知识 篇文章 项目 不错 好胜 简洁 一致 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 喔噻互联网科技有限公司 哈尔滨大商圈互联网科技有限公司 科技互联网项目 圆梦互联网科技 平安科技 互联网 互联网科技的英文 成都互联网科技公司 北京禾田雨橡互联网科技 顺玮阁互联网科技 青海省互联网新科技 银川新华互联网科技学校地址 互联网之后的科技是什么 宁夏科技产业互联网案例 移动互联网科技公司 每天都有哪些好的互联网科技 深圳无忧互联网科技 杭州披云加互联网科技有限公司 工业互联网科技创业 唐山双旺合互联网科技产业园 第三届互联网大会安防黑科技 哈尔滨大商圈互联网科技有限公司 互联网是第几次科技革命的成果 中国互联网科技股 互联网科技财经 互联网与科技金融数据 互联网科技产业特征 深圳市优智互联网科技有限公司 本届互联网博览会上的黑科技 内蒙古九一互联网科技 佛山市拉法互联网科技有限公司
0