docker pull nginx
预先创建一个容器,用来拷贝默认的配置文件
docker run -d \
-p 80:80 \
-- name nginx \
--rm \
--volume /home/nginx/html:/usr/share/nginx/html \
nginx
映射网页目录和配置目录
docker run \
--name nginx \
--volume /home/nginx/html:/usr/share/nginx/html \
--volume /home/wuu/spider/novel/books:/home/wuu/spider/novel/books \
--volume /home/nginx/conf:/etc/nginx \
-p 80:80 \
-d \
nginx
配置反向代理
server {
listen 80;
listen [::]:80;
server_name localhost;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
location ^~ /portainer/ { # ^~/api 表示匹配前缀为api的请求
proxy_pass http://192.168.1.134:9000/; # 注:proxy_pass的结尾有/, -> 效果:会在请求时将/api/*后面的路径直接拼接到后面
proxy_set_header Host $proxy_host; # 改变请求头值 -> 转发到码云才会成功
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
}
location ^~ /baidu/ {
proxy_pass https://www.baidu.com/;
proxy_set_header Host $proxy_host; # 改变请求头值 -> 转发到码云才会成功
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}