docker中配置的nginx,nginx对外统一暴露服务,其他的服务都以docker的方式在服务器上运行,如何通过该服务暴露其他的docker服务
docker network ls docker inspect nginx --format='{{range .NetworkSettings.Networks}}{{.NetworkID}}{{end}}'
docker network connect 115bb947027b one-api
或者在启动的时候指定网络
docker run --name one-api -d \ --restart always \ --network 115bb947027b \ # 直接使用网络ID 或者网络名称 -p 3000:3000 \ -e TZ=Asia/Shanghai \ -v /data/one-api:/data \ justsong/one-api
但是更建议使用docker-compse启动
version: '3.8' services: one-api: image: justsong/one-api container_name: one-api restart: always ports: - "3000:3000" environment: - TZ=Asia/Shanghai volumes: - /data/one-api:/data networks: - nginx-network networks: nginx-network: external: true name: vanblog_default
server { listen 80; server_name nobugs.com.cn; return 301 https://$host$request_uri; } server { listen 80; server_name api.nobugs.com.cn; # 指定子域名 return 301 https://$host$request_uri; } server { listen 80; server_name interface.nobugs.com.cn; # 指定子域名 return 308 https://$host$request_uri; # 这里和上面的301不一样 } server { listen 443 ssl; location / { proxy_pass http://one-api:3000; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } } server { listen 443 ssl; location / { proxy_pass http://api-server:8080; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
🫢特别注意 2个服务有区别,重定向的不一样,一个是301,一个308

docker exec nginx nginx -s reload
申请子域名

添加子域名的解析到主域名

找到子域名的解析配置

回到主域名中添加主域名的解析配置

本文作者:瓜儿爸
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!