准備
-
拉取nginx官方鏡像
docker pull nginx
-
etc/nginx/ 下新建目錄 cert 和 conf
cert 存放證書
conf 存放配置文件
mkdir /etc/nginx/cert
mkdir /etc/nginx/conf
-
/etc/nginx/下新建nginx.conf 配置文件
user root;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/log/nginx/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;
client_max_body_size 100m;
include /etc/nginx/conf.d/*.conf;
}
#TCP轉發配置目錄
include /etc/nginx/tcp.d/*.conf;
啟動容器
docker run --restart=always -d --name nginx1 -v /etc/nginx/cert:/etc/nginx/cert -v /etc/nginx/conf.d:/etc/nginx/conf.d -v /etc/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/logs:/var/log/nginx -v /home/nginx/cache:/home/nginx/cache -p 80:80 -p 443:443 nginx
測試
訪問IP看看是否正常,若有異常可用 docker log 容器id 進行查看錯誤日志后處理
擴展
教程到這里已經到了這里,基本的nginx代理已經可以了,小伙伴可以自己嘗試着配置轉發到其他服務,如nps.配置雙代理,冗余保證.
但是域名訪問還是http,有些接口開發中需要https,這個就沒轍了,所以下一篇教程就是申請https泛域名解析