Nginx + Docker 反向代理多个项目

Nginx 运行在 Docker 中,可以用 Docker 网络(bridge network) 让容器直接互相访问

创建 Docker 网络

docker network create my_network

启动多个应用

复制代码
docker run -d --name app1 --network my_network my-app-1
docker run -d --name app2 --network my_network my-app-2

Nginx 配置

复制代码
server {
    listen 80;
    server_name app1.example.com;

    location / {
        proxy_pass http://app1:80;
    }
}

server {
    listen 80;
    server_name app2.example.com;

    location / {
        proxy_pass http://app2:80;
    }
}

proxy_pass http://app1:80Nginx 会自动解析 app1 这个容器的 IP。

Nginx 也用 Docker 启动

复制代码
docker run -d --name nginx --network my_network -p 80:80 -v /path/to/nginx.conf:/etc/nginx/nginx.conf nginx

这样子所有请求走 Nginx,Nginx 再分流到不同的容器。

相关推荐
爱奇艺技术产品团队1 小时前
服务性能防腐体系:基于自动化压测的熔断机制
运维·自动化
小金三岁半1 小时前
云服务器安装redis
运维·服务器·redis
电商数据girl2 小时前
在1688平台上如何实现铺货和上传商品的自动化?
运维·自动化
已是上好佳2 小时前
Tcp网络通信的基本流程梳理
linux·运维·服务器·c++
reddingtons3 小时前
在 Ubuntu 下通过 Docker 部署 Nginx 服务器
服务器·ubuntu·docker
大得3693 小时前
宝塔docker切换存储目录
java·docker·eureka
大小科圣3 小时前
nginx实现tomcat反向代理
服务器·nginx·tomcat
1 Byte4 小时前
Centos7使用docker搭建redis集群
redis·docker·容器·redis集群搭建
杰克崔4 小时前
关于stac和clac的进一步细节及EFLAGS
linux·运维·服务器