![Docker 上的 Jenkins - 可用交换空间 0](https://linux22.com/image/688717/Docker%20%E4%B8%8A%E7%9A%84%20Jenkins%20-%20%E5%8F%AF%E7%94%A8%E4%BA%A4%E6%8D%A2%E7%A9%BA%E9%97%B4%200.png)
答案1
运行以下命令查看您的主机是否配置了交换文件:
free|grep -i Swap
Swap: 0 0 0
如果您得到如上所示的“Swap:0 0 0”,则表示您的主机没有配置交换。
在主机上配置交换文件:
sudo dd if=/dev/zero of=swapfile bs=1M count=1K
sudo mkswap swapfile
sudo chown root:root swapfile
sudo chmod 600 swapfile
sudo swapon swapfile
验证你的交换已配置:
free|grep -i Swap
Swap: 1048572 0 1048572
很好,我们在主机上进行了交换。
输入以下命令运行 Jenkins docker:
docker run --privileged -p 8080:8080 --name jenkins -p 50000:50000 jenkins
请注意,您必须以特权模式运行 docker。
当您以特权模式运行 Jenkins docker 时,主机的交换将在 docker 内部可用,因此您的 Jenkins master 将具有可用的交换。
如果您的主机已经有可用的交换,您需要做的就是以特权模式运行 Jenkins docker。