Post

存储占用

存储占用

检查分区

/mnt/registry/registry/docker/registry/v2/blobs/sha256

1
2
3
4
[root@harbor v2]# du -h --max-depth=1
183M	./repositories
42G	./blobs
42G	.
1
du -h --max-depth=1  | sort -hr

清理不必要的文件

目的: 释放一部分空间, 方便登录界面

1
find ./ "*.log" -type f -exec rm {} \;
1
find ./ -name "*.tmp" -type f -exec rm {} \;
1
find -name "cron.log" -type f -mtime +7 -exec rm {} \;
1
find ./ -size +100M -type f

修改data\_volume

The default data volume

data_volume: /mnt/registry

harbor部署到大磁盘上

docker 数据根目录

默认情况下,Docker 将其数据存储在 /var/lib/docker 下

1
2
3
4
5
6
7
8
cat /etc/docker/daemon.json

{
# 假如 /mnt/docker-data是新的挂载点
"data-root": "/mnt/docker-data"
}

systemctl restart docker

新部署

修改现有环境

1
2
3
4
sudo systemctl stop docker
sudo mv /var/lib/docker /data/docker
sudo ln -s /data/docker /var/lib/docker
sudo systemctl start docker

harbor数据根目录

Harbor 的数据安装文件默认在 /opt/harbor

Harbor 的数据目录默认在 /data

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ vim /opt/harbor/harbor.yml

# The default data volume
data_volume: /mnt/registry


$ df -h .
文件系统        容量  已用  可用 已用% 挂载点
/dev/vda1        80G   80G  407M  100% /

$ df -h .
文件系统        容量  已用  可用 已用% 挂载点
/dev/vda1        80G   80G  407M  100% /

$ du -h --max-depth=1  | sort -hr
21G	./registry

也就是说先得有非系统盘的挂载目录, 才能修改配置文件

修改运行中的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
sudo docker-compose -f /path/to/harbor/docker-compose.yml down

# 假设新的路径是 /data/harbor
sudo mkdir -p /data/harbor
sudo mv /your/harbor/data/path/* /data/harbor/

#修改配置文件: data_volume: /data/harbor
vim /opt/harbor/harbor.yml


# 确保 Docker Compose 文件中的数据卷映射与 harbor.yml 中的配置匹配
# 更新 Docker Compose 文件
# volumes:
#  - /data/harbor:/var/lib/harbor
sudo vim /opt/harbor/docker-compose.yml

# 重新启动
sudo docker-compose -f /opt/harbor/docker-compose.yml up -d

# 验证
sudo docker-compose -f /path/to/harbor/docker-compose.yml logs -f

修改已部署

软连接修改

harbor.yml

data_volume: xxxxxx

这里的数据都是干什么的

/opt/harbor/

crontab

1
2
3
0 3 * * * ps -A -ostat,ppid | grep -e '^[Zz]' | awk '{print }' | xargs kill -HUP > /dev/null 2>&1
0 */1 * * * cat /dev/null > /var/log/messages
0 */1 * * * find /var/ -type f -name "*.log" -delete
This post is licensed under CC BY 4.0 by the author.