Loading... ## 1.从 docker 下载 Nginx 镜像 ```shell docker pull nginx ``` ## 2.创建挂载目录 之后的文件就放这里面,对 docker 里 Nginx 对应的目录进行映射,就不用改文件进到容器里了 ```shell mkdir -p /data/nginx/{conf,conf.d,html,logs} ``` ## 3.为了保证文件的正确性,建议先进入容器把对应的文件给复制出来 不方便的可以开两个窗口,一个进到容器里,左边复制到右边这样,这是为了保证文件正确 ```shell #启动容器 docker run -itd nginx /bin/bash #进入容器 docker attach xxxxxxxxxx ``` ## 4.接下来修改下 default.conf 文件就好了 这里我最多就改改端口号,访问路径之类的 ```shell server { #端口号 listen 80; #定义使用 localhost 访问 server_name localhost; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { #根目录位置 root /usr/share/nginx/html; #index 文件位置 index 1.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; #} } ``` 这里测试用的 1.html 自己写的 ```html <html> <head> <title>Mynginx</title> </head> <body> <h1> 欢迎使用nginx! </h1> </body> </html> ``` ## 5.接下来就可以启动容器了 ```shell docker run --name myNginx -d -p 8089:80 -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/conf.d:/etc/nginx/conf.d -v /data/nginx/logs:/var/log/nginx nginx ``` 挂载路径一定要对好,别写错了 -p 8089:80 这里把 80 端口映射到主机的 8089 端口,这样访问就是 8089 端口了,不用去改 nginx 的默认端口 接下来就可以看下容器是否正常启动 ```shell docker ps ``` 要是没有看到容器那说明启动有问题,看看是配置文件写的不对,还是挂载路径不对之类的 启动后就可以直接浏览器 localhost:8089 看到刚才写的 1.index 页面了 []() ## 6.不停止 nginx 更新配置文件 当我们修改配置文件后要更新配置文件,这个时候开两窗口就很爽 ```shell #进入容器 docker exec -it xxxxxxxxxxx /bin/bash #测试配置文件是否有问题 nginx -t #要是显示 successful 就可以更新了 nginx -s reload ``` > 其他资料 [docker部署nginx后请求接口返回502](https://blog.11dz.cn/archives/408.html) 最后修改:2022 年 07 月 01 日 © 允许规范转载 打赏 赞赏作者 微信 赞 0 如果觉得我的文章对你有用,请随意赞赏