docker-compose之Nginx二级目录反向代理禅道

本文详细介绍了如何使用docker-compose部署包含Nginx、MySQL和禅道的项目,强调了二级目录下禅道静态资源的反向代理配置问题及其解决方案,包括修改禅道源码和Nginx配置文件,实现静态资源的正确加载。
摘要由CSDN通过智能技术生成

本次项目会用到3个镜像分别是nginx、mysql 和禅道,以后若迁移服务器环境则只需下载这3个镜像即可

mysql与禅道镜像下载与构建参考:mysql   禅道

 

目录介绍

cloud                                # 文件名
+----mysql_db                        # mysql的挂载目录,挂载到容器
|    +----mysqld.cnf                 # mysql的配置文件,挂载到容器
+----nginx                      
|    +----conf.d                     # nginx服务配置目录,挂载到容器
|         +----default.conf          # nginx服务配置文件,挂载到容器
|    +----log 
|         +----host.access.log       # nginx日志文件,挂载到容器
|         +----error.log             # nginx错误日志文件,挂载到容器
|    +----html
|         +----50x.html              # nginx报错50X返回页面
+----zentao                          # 禅道挂载目录,挂载到容器
+----.env                            # docker-compose环境变量配置文件
+----docker-compose.yml              # docker-compose的运行文件

配置

环境变量 — .env文件

# mysql信息配置
MYSQL_IMAGE=mysql:5.7
MYSQL_ROOT_PASSWORD=password
MYSQL_IP=192.110.0.2

# 禅道信息配置
ZENTAO_IMAGE=zentao:latest
ZENTAO_IP_BACKEND=192.110.0.10
ZENTAO_IP_FRONTEND=182.120.0.3

# nginx信息配置
NGINX_IMAGE=nginx:mainline-alpine-perl
NGINX_IP=182.20.0.2

# network信息配置
BACKEND_SUBNET=192.110.0.0/16
FRONTEND_SUBNET=182.120.0.0/16

docker-compose.yml

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在 Docker Compose 中安装配置 Nginx 来实现 HTTPS 和反向代理,你可以按照以下步骤进行操作: 1. 首先,在你的项目目录下创建一个名为 `docker-compose.yml` 的文件,并添加以下内容: ```yaml version: '3' services: nginx: image: nginx ports: - 80:80 - 443:443 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./certs:/etc/nginx/certs ``` 这将创建一个名为 `nginx` 的服务,并将容器的 80 和 443 端口映射到主机的相应端口。同时,我们将挂载一个自定义的 `nginx.conf` 配置文件和一个名为 `certs` 的文件夹用于存放 SSL/TLS 证书。 2. 在项目目录下创建一个名为 `nginx.conf` 的配置文件,并添加以下内容作为示例: ```nginx events {} http { server { listen 80; server_name example.com; location / { proxy_pass http://backend:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } server { listen 443 ssl; server_name example.com; ssl_certificate /etc/nginx/certs/cert.pem; ssl_certificate_key /etc/nginx/certs/key.pem; location / { proxy_pass http://backend:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } } ``` 这是一个简单的 Nginx 配置文件示例,其中设置了一个 HTTP 的反向代理和一个 HTTPS 的反向代理。你需要将 `example.com` 替换为你的域名,并将 SSL/TLS 证书文件 `cert.pem` 和 `key.pem` 放入 `certs` 文件夹中。 3. 在你的项目目录下创建一个名为 `certs` 的文件夹,并将正确的 SSL/TLS 证书文件放入其中。 4. 现在,你可以运行 `docker-compose up -d` 命令启动容器。 这样,Nginx 将通过反向代理将所有对于 `example.com` 的请求转发到名为 `backend` 的服务的 8000 端口上。同时,通过 HTTPS 访问时,Nginx 使用了提供的 SSL/TLS 证书来进行加密通信。 请注意,上述步骤只是一个示例,你可能需要根据你的实际需求进行修改和调整。希望这能帮到你!如果有任何进一步的问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SitVen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值