docker 容器大佬请进

[复制链接]
查看: 5673   回复: 7
发表于 2023-2-26 19:38:09 | 显示全部楼层 |阅读模式
我们知道 2 个容器之间一般是隔离的

但是最近用 acme.sh 的时候看见 acme.sh 容器竟然能控制另一个 nginx 容器里面的服务重启

service nginx force-reload

貌似通过 labels 实现的,自己编排镜像应该怎么写呢?

https://github.com/acmesh-offici ... ker-compose-example
  1. version: '3.4'services:  web:    image: nginx    container_name: nginx    labels:      - sh.acme.autoload.domain=example.com  acme.sh:    image: neilpang/acme.sh    container_name: acme.sh        command: daemon    volumes:      - ./acmeout:/acme.sh      - /var/run/docker.sock:/var/run/docker.sock     environment:      - DEPLOY_DOCKER_CONTAINER_LABEL=sh.acme.autoload.domain=example.com      - DEPLOY_DOCKER_CONTAINER_KEY_FILE=/etc/nginx/ssl/example.com/key.pem      - DEPLOY_DOCKER_CONTAINER_CERT_FILE="/etc/nginx/ssl/example.com/cert.pem"      - DEPLOY_DOCKER_CONTAINER_CA_FILE="/etc/nginx/ssl/example.com/ca.pem"      - DEPLOY_DOCKER_CONTAINER_FULLCHAIN_FILE="/etc/nginx/ssl/example.com/full.pem"      - DEPLOY_DOCKER_CONTAINER_RELOAD_CMD="service nginx force-reload"
复制代码

学习了,/var/run/docker.sock:/var/run/docker.sock ,才是关键,以下是参考资料:
https://docs.docker.com/engine/r ... ockerd/#description
https://cloud.tencent.com/developer/article/1454335
回复

使用道具 举报

发表于 2023-2-26 19:38:29 | 显示全部楼层
我看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-26 19:38:41 | 显示全部楼层
- /var/run/docker.sock:/var/run/docker.sockdocker 容器大佬请进

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-26 19:39:31 | 显示全部楼层
并不是,这句才是可以控制的关键,
- /var/run/docker.sock:/var/run/docker.sock
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-26 19:40:01 | 显示全部楼层
用一下 Watchtower
你就懂了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-26 19:40:13 | 显示全部楼层
https://www.freebuf.com/articles/system/201793.html
:lol
回复 支持 反对

使用道具 举报

发表于 2023-2-26 19:40:41 | 显示全部楼层
https://github.com/madwind/docker-nginx 我也写了个集成acme的,caddy太难用了,还是nginx好
回复 支持 反对

使用道具 举报

发表于 2023-2-26 19:40:55 | 显示全部楼层
我直接用的caddy,挺简单
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则