Jenkins on Docker - Espace d'échange gratuit 0

10

J'ai remarqué que mon nœud maître sur Jenkins montre

free swap space: 0 B

J'ai donc ajouté un fichier d'échange comme décrit ici .

Mais cela n'a aucun effet. Qu'est-ce que je fais mal?

dknaack
la source
Salut @dknaack, une chance oh de trouver la raison de cela?
olyv
@olyv mon conteneur s'exécutait dans un cluster kubernetes. Après avoir donné plus de ressources au déploiement, le problème a été résolu. Bonne chance et bonne journée!
dknaack
1
Merci pour votre réponse. Je vais continuer d' enquêter problème wtih mes jenkins
olyv

Réponses:

4

Exécutez la commande suivante pour voir si votre hôte a un fichier d'échange configuré:

free|grep -i Swap
Swap:            0          0          0

Si vous obtenez "Swap: 0 0 0" comme vous le voyez ci-dessus, votre hôte n'a pas de swap configuré.

Configurez un fichier d'échange sur votre hôte:

dd if=/dev/zero of=swapfile bs=1M count=1K
mkswap swapfile
sudo chown root:root swapfile
sudo chmod 600 swapfile
sudo swapon swapfile

Vérifiez que votre échange est configuré:

free|grep -i Swap
Swap:      1048572          0    1048572

Bon, nous avons un échange sur l'hôte.

Exécutez votre docker Jenkins en tapant:

docker run --privileged -p 8080:8080 --name jenkins -p 50000:50000 jenkins

Notez que vous devez exécuter le docker en mode privilégié.

Lorsque vous exécutez votre docker Jenkins en mode privilégié, le swap de l'hôte sera disponible à l'intérieur du docker, donc votre maître Jenkins aura un swap fonctionnel.

Si votre hôte dispose déjà d'un swap fonctionnel, il vous suffit d'exécuter le docker Jenkins en mode privilégié.

AAber
la source