Jenkins Docker容器空间不足

wfauudbj  于 2023-10-17  发布在  Jenkins
关注(0)|答案(1)|浏览(181)

我运行一个标准的Jenkins容器,使用docker-compose如下:

version: '3'
services:
  jenkins:
    container_name: jenkins
    image: jenkins/jenkins:lts
    restart: unless-stopped
    volumes:
      - jenkins_home:/var/jenkins_home
    ports:
      - 8080:8080
      - 50000:50000
volumes:
  jenkins_home:

当我运行它时,/var/jenkins_home耗尽了空间。

$ docker exec -it jenkins bash
jenkins@e7009fbca617:/$ df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay          18G   17G   64K 100% /
tmpfs            64M     0   64M   0% /dev
tmpfs           495M     0  495M   0% /sys/fs/cgroup
/dev/sda1        18G   17G   64K 100% /var/jenkins_home
shm              64M     0   64M   0% /dev/shm
tmpfs           495M     0  495M   0% /proc/acpi
tmpfs           495M     0  495M   0% /proc/scsi
tmpfs           495M     0  495M   0% /sys/firmware

我不明白的是是什么吞噬了这个空间。如果我进入/var/jenkins_home/查看空间的使用情况,它不会显示这样的用法:

jenkins@e7009fbca617:/$ cd /var/jenkins_home/
jenkins@e7009fbca617:~$ du -sh
3.5G    .
jenkins@e7009fbca617:~$

如何调查导致问题的原因?
注意:Jenkins确实报告系统空间不足,因此无法正常工作。
注2:我试图运行一个相当大的存储库的构建,可能会导致一些空间问题。但我试图删除容器,并重新创建它一次,它没有帮助。

bwleehnv

bwleehnv1#

对我们来说,我们是在jenkins docker中构建docker镜像。因此,我们需要从docker镜像内部运行常规的修剪:

  1. sudo docker exec -it jenkins-blueocean bash
  2. docker system prune -a
    这将删除所有停止的容器,所有当前未使用的网络,所有没有关联容器的镜像,最重要的是从Docker镜像中删除构建缓存。
    希望这对你有帮助。

相关问题