限制gitlab的docker容器日志空间占用
摘要: 错误的容器配置会造成docker容器的日志不断累积的问题, 例如在我的电脑上曾累积超过200GB的日志。 通过修改配置, 可以有效避免这种问题的发生。
〓 Table of Contents 〓
问题描述
对于使用docker desktop部署了private gitlab的朋友, 如果配置不当, 会造成docker容器的日志不断累积的问题。 例如在我的Mac Mini上就累积了超过200GB的日志文件。 通过修改配置, 可以有效避免这种问题的发生。
配置更改
假设我们有一个正在运行的gitlab容器,可以通过以下步骤更新其日志设置:
- 首先我们查询容器id, 并根据id停止容器的运行
1
2
3
4
5
6查询id
docker ps
停止容器运行
docker stop your_container_id
移除容器(注意,这不会删除容器的数据卷):
docker rm your_container_id - 接着,我们重新运行docker run来启动一个新的容器, 但注意, 这次我们更新启动命令, 把对日志大小的限制放到启动命令里面去 举个例子, 我的gitlab的启动命令如下:
1
docker run -d --log-opt max-size=50m --log-opt max-file=3 your_image_name
1
2
3
4
5
6
7
8
9
10
11
12sudo docker run --detach \
--hostname {你的ip} \
--publish {你的端口1} \
--publish {你的端口2} \
--name gitlab \
--restart always \
--log-opt max-size=50m \ # 这是重点
--log-opt max-file=3 \ # 这是重点
--volume ~/gitlab/config:/etc/gitlab:Z \
--volume ~/gitlab/logs:/var/log/gitlab:Z \
--volume ~/gitlab/data:/var/opt/gitlab:Z \
{你的镜像}
这样子, 我们的gitlab日志就再不会大于50m了。
限制gitlab的docker容器日志空间占用