【发布时间】:2024-04-13 09:08:32
【问题描述】:
我是 docker 和 nginx 的新手,我设法让 nginx 在容器中运行 HTTPS,我想在 nginx 后面添加 jenkins。我不想在我的服务器上打开新端口,我希望所有流量都通过我的 nginx。
如何编写我的docker-compose.yaml 和我的app.conf(nginx 的配置文件)以使其一起工作?这是我的配置文件,我用一个虚拟的example.com 替换了我的域名,我希望 jenkins 可以在jenkins.example.com 上使用。
docker-compose.yml
nginx:
image: nginx:1.17-alpine
container_name: nginx-docker
ports:
- "80:80"
- "443:443"
volumes:
- ./data/nginx:/etc/nginx/conf.d
- ./data/html:/etc/nginx/html
jenkins:
image: "jenkins/jenkins:lts"
container_name: jenkins-docker
volumes:
- ./data/jenkins:/var/jenkins_home
expose:
- "8080"
ports:
- "50000:50000"
app.conf
server {
listen 80;
server_name example.com;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
location / {
root html;
index index.html;
}
}
【问题讨论】:
标签: docker nginx jenkins docker-compose