拉取镜像
docker pull nginx
创建映射文件夹
mkdir -p /data/nginx/{conf,html,log}
创建容器 并copy 配置文件
#生成容器
docker run --name nginx -p 9001:80 -d nginx
#将容器nginx.conf文件复制到宿主机
docker cp nginx:/etc/nginx/nginx.conf /data/nginx/conf/nginx.conf
#将容器conf.d文件夹下内容复制到宿主机
docker cp nginx:/etc/nginx/conf.d /data/nginx/conf/conf.d
#将容器中的html文件夹复制到宿主机
docker cp nginx:/usr/share/nginx/html /data/nginx/
卸载镜像
docker rm -f nginx
安装镜像
docker run -p 80:80 --name nginx \
-v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /data/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /data/nginx/log:/var/log/nginx \
-v /data/nginx/html:/usr/shard/nginx/html -d \
nginx
在/data/nginx/conf/conf.d下创建jenkins.conf
# 定义一个名为 jenkins_upstream 的上游服务器组
upstream jenkins_upstream {
server 127.0.0.1:9010;
# 如果需要,可以添加更多后端服务器
# server backup_server_ip:port;
}
server {
listen 80;
server_name myjdyun.com;
# 访问日志配置
access_log /var/log/nginx/jenkins.access.log;
error_log /var/log/nginx/jenkins.error.log;
# SSL 配置(如果需要的话)
# listen 443 ssl;
# ssl_certificate /etc/nginx/ssl/myjdyun.com.crt;
# ssl_certificate_key /etc/nginx/ssl/myjdyun.com.key;
# ssl_protocols TLSv1.2 TLSv1.3;
# ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256...';
# ssl_prefer_server_ciphers on;
# HSTS 配置(如果需要的话)
# add_header Strict-Transport-Security "max-age=31536000" always;
# 设置客户端请求体大小限制
client_max_body_size 100m;
# 设置根目录(如果需要的话)
# root /usr/share/nginx/html;
location / {
proxy_pass http://jenkins_upstream;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 设置代理连接的超时时间
proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 60s;
# 如果Jenkins需要知道客户端的真实IP,则启用以下行
# proxy_set_header X-Forwarded-Host $server_name;
# 如果需要,可以设置代理缓存(不建议用于动态内容)
# proxy_cache my_cache;
# proxy_cache_valid 200 302 10m;
# proxy_cache_valid 404 1m;
}
# 如果需要,可以添加更多的 location 块来处理特定的路径或文件类型
# 错误页面配置
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
internal;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
重启nginx
docker restart nginx
标签:log,完美,nginx,html,proxy,conf,docker
From: https://www.cnblogs.com/Microants/p/18664123