0
点赞
收藏
分享

微信扫一扫

基于docker快速部署基于本地配置文件的nginx

花海书香 2022-04-06 阅读 110



基于docker快速部署基于本地配置文件的nginx

  • ​​基于docker快速部署基于本地配置文件的nginx​​
  • ​​下载nginx​​
  • ​​配置nginx的nginx.conf配置文件​​
  • ​​启动基于本地配置文件的nginx​​
  • ​​验证nginx是否启动成功​​
  • ​​常见错误排查​​
  • ​​nginx启动不成功​​
  • ​​nginx启动的时候本地配置的nginx没有生效​​
  • ​​终极排错方式​​


基于docker快速部署基于本地配置文件的nginx

首先要确保大家的服务器已经安装好了docker,若大家还没安装好docker,请大家先移步以下的​​博客地址​​,按照该步骤安装docker。

下载nginx

[root@bogon ~]# docker images 
REPOSITORY TAG IMAGE ID CREATED SIZE
base-jdk8 latest 897b04ba2617 2 days ago 598 MB
docker.io/centos latest 9f38484d220f 2 weeks ago 202 MB
[root@bogon ~]# docker pull nginx // 下载nginx的镜像
Using default tag: latest
Trying to pull repository docker.io/library/nginx ...
latest: Pulling from docker.io/library/nginx
27833a3ba0a5: Pull complete
e83729dd399a: Pull complete
ebc6a67df66d: Pull complete
Digest: sha256:c8a861b8a1eeef6d48955a6c6d5dff8e2580f13ff4d0f549e082e7c82a8617a2
Status: Downloaded newer image for docker.io/nginx:latest
[root@bogon ~]# docker images // 查看本地的镜像
REPOSITORY TAG IMAGE ID CREATED SIZE
base-jdk8 latest 897b04ba2617 2 days ago 598 MB
docker.io/nginx latest 2bcb04bdb83f 7 days ago 109 MB
docker.io/centos latest 9f38484d220f 2 weeks ago 202 MB
[root@bogon ~]#

配置nginx的nginx.conf配置文件

在我们的服务器创建以下的文件路径:【/data/nginx/conf、/data/nginx/html、/data/nginx/logs】

同时在conf路径底下创建一个nginx.conf文件,文件内容如下,大家可以根据自己的实际业务需要扩展该配置文件。

user  nginx;
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;

#gzip on;

server {
# 监听该docker的80端口
listen 80;
server_name localost;
# 当前端响应http:\\xxxx:xx/admin/test/xxxx的时候回转发请求到http://127.0.0.1:8211/xxxx
location /admin/test/ {
rewrite ^/admin/test/(.*) /$1 break;
proxy_pass http://127.0.0.1:8211/;
}

启动基于本地配置文件的nginx

docker run -d -p 8083:80 -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs/:/var/log/nginx/ --name=nginx-t1 nginx

验证nginx是否启动成功

打开浏览器直接访问http:\xxxx:xx/admin/test/xxxx这时候我们会发现我们已经启动成功了。

常见错误排查

nginx启动不成功

大家可以直接执行如下的命令来查看:

[root@bogon conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1a461e99281e nginx "nginx -g 'daemon ..." 5 minutes ago Up 5 minutes 0.0.0.0:8083->80/tcp nginx-t1
[root@bogon conf]# docker logs 1a461e99281e

或者大家可以直接查看logs目录底下的error日志。

nginx启动的时候本地配置的nginx没有生效

这时候大家要检查下我们的启动的docker命令挂载的目录是否正确,比如我们现在的挂载的配置的目录的位置是/data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf,大家确定下自己写在后面的/etc/nginx/nginx.conf是否写错了,不生效百分90的原因都是因为挂载路径写错了导致的。

终极排错方式

打开官网直接看官网文档:​​https://hub.docker.com/_/nginx​​



举报

相关推荐

0 条评论