私はジェンキンスの私のマスターノードが示していることに気づきました
free swap space: 0 B
だから私は here のようにスワップファイルを追加しました。
しかし、これは効果がありません。何が悪いのですか?
次のコマンドを実行して、ホストにスワップファイルが構成されているかどうかを確認します。
free|grep -i Swap
Swap: 0 0 0
上記のように "Swap:0 0 0"が表示される場合、ホストにはスワップが構成されていません。
ホストでスワップファイルを構成します。
dd if=/dev/zero of=swapfile bs=1M count=1K
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マスターは有効なスワップを持ちます。
ホストのスワップが機能している場合は、Jenkins Dockerを特権モードで実行するだけです。