给自己做个备忘,在飞牛 OS 的 Docker 里拉一个Nginx,建三个内网工具站点服务我自己,
分别占用软路由的 8000、8001、8002端口,下面是实现方法,一分钟搞定。
首先创建一个包含所有必要配置的完整Nginx配置文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| cat << 'EOF' > /tmp/nginx-multi-port.conf events { worker_connections 1024; }
http { include /etc/nginx/mime.types; default_type application/octet-stream;
server { listen 80; server_name _; root /usr/share/nginx/html; index index.html index.htm; location / { try_files $uri $uri/ =404; } } server { listen 81; server_name _; root /usr/share/nginx/html-twitter; index index.html index.htm; location / { try_files $uri $uri/ =404; } } server { listen 82; server_name _; root /usr/share/nginx/html-jav; index index.html index.htm; location / { try_files $uri $uri/ =404; } } } EOF
|
SSH 到软路由,停止并移除现有容器:
1 2
| sudo docker stop my-nginx sudo docker rm my-nginx
|
启动新容器,使用正确的Nginx配置:
1 2 3 4 5 6 7 8 9 10
| sudo docker run -d \ --name my-nginx \ -p 8000:80 \ -p 8001:81 \ -p 8002:82 \ -v /vol1/1000/Web/maxlay.github.io:/usr/share/nginx/html:ro \ -v /vol1/1000/Web/twitter-ero-video-ranking:/usr/share/nginx/html-twitter:ro \ -v /vol1/1000/Web/JAV-video:/usr/share/nginx/html-jav:ro \ -v /tmp/nginx-multi-port.conf:/etc/nginx/nginx.conf:ro \ nginx:stable-alpine
|
检查容器是否正常运行:
查看容器日志以确认Nginx配置是否正确加载:
1
| sudo docker logs my-nginx
|
测试各个端口:
1 2 3
| curl -I localhost:8000 curl -I localhost:8001 curl -I localhost:8002
|