当前,我正在一个项目中,该项目使用后缀邮件服务器实现自定义docker映像。 Docker将为我们提供放大/缩小邮件服务的功能。
我的问题是关于数据存储。在每个容器实例中,我想将/ var / log的内容写入主机,甚至可能写入远程主机。不出所料,使用我当前的docker-compose文件缩放的实例都使用相同的存储位置。
我要查找的是是否存在诸如动态存储之类的东西。
例如,如果我最多扩展3个实例,那么我想在/ var / lib / docker / volumes / MYVOLUME /
下看到3个子目录下面是我的docker-compose.yml文件供参考。
version: '3.2'
services:
sd-corp:
build: ./Corporate
tty: true
networks:
corpnet:
volumes:
- type: volume
source: corp
target: /var/log
volume:
nocopy: true
sd-ent:
build: ./Entertainment
tty: true
networks:
entnet:
volumes:
- type: volume
source: ent
target: /var/log
volume:
nocopy: true
sd-soft:
build: ./Software
tty: true
networks:
softnet:
volumes:
- type: volume
source: soft
target: /var/log
volume:
nocopy: true
networks:
corpnet:
driver: bridge
ipam:
config:
- subnet: 10.9.50.0/24
entnet:
driver: bridge
ipam:
config:
- subnet: 10.9.51.0/24
softnet:
driver: bridge
ipam:
config:
- subnet: 10.9.52.0/24
volumes:
corp:
ent:
soft:
答案 0 :(得分:0)
这些只是标准的系统日志文件吗?他们不应该记录到文件,应该记录到STDOUT并让docker handle them with a logging driver,这是处理容器日志的一种简单得多的方法。
Here's how the official Nginx image does it,通过将日志符号链接到stdout / stderr。