根据官方 docker 文档,要配置日志记录选项(例如最大日志文件大小),应该调整/etc/docker/daemon.json
文件。
但是,我的系统中/etc/docker
下的唯一文件是key.json
.
如何设置/获取日志记录的最大文件大小?(每个容器或系统范围?
码头工人:17.09.1-ce
操作系统:Ubuntu 16.04.03
在aws
ec2
t2.small
实例上
- 使用以下命令创建一个新的 daemon.json 文件:
cat << EOF > /etc/docker/daemon.json
{
"dns": ["8.8.8.8", "8.8.4.4"],
"tls": true,
"tlsverify": true,
"tlscacert": "/etc/docker/ca.pem",
"tlscert": "/etc/docker/server-cert.pem",
"tlskey": "/etc/docker/server-key.pem",
"log-opts": {
"max-size": "10m",
"max-file": "2"
}
}
- 在 dockerd 的初始化脚本中引用它
mkdir -p /etc/systemd/system/docker.service.d
cat << EOF > /etc/systemd/system/docker.service.d/custom.conf
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2376 --config-file /etc/docker/daemon.json
EOF
- 重新启动 docker 守护进程
sudo systemctl daemon-reload
sudo systemctl restart docker
这假设您正在使用 TLS 远程访问 dockerd(强烈建议)。我怀疑你不是,因为你的/etc/docker
目录没有任何证书和密钥。在这种情况下,请删除 daemon.json 中的所有 tls 条目,并将tcp://0.0.0.0:2376
替换为tcp://0.0.0.0:2375
。
默认情况下,/etc/docker/daemon.json
不存在。您可以创建它并配置日志记录选项。确保之后重新启动 docker 服务。
systemctl restart docker.service