Я заметил, что мой главный узел на Jenkins показывает
free swap space: 0 B
Поэтому я добавил файл подкачки, как описано здесь .
Но это не имеет никакого эффекта. Что я делаю неправильно?
Я заметил, что мой главный узел на Jenkins показывает
free swap space: 0 B
Поэтому я добавил файл подкачки, как описано здесь .
Но это не имеет никакого эффекта. Что я делаю неправильно?
Ответы:
Выполните следующую команду, чтобы увидеть, настроен ли на вашем хосте файл подкачки:
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 run --privileged -p 8080:8080 --name jenkins -p 50000:50000 jenkins
Обратите внимание, что вы должны запустить докер в привилегированном режиме.
Когда вы запускаете докер Jenkins в привилегированном режиме, подменщик хоста будет доступен внутри докера, поэтому у вашего мастера Jenkins будет рабочий своп.
Если на вашем хосте уже есть рабочий своп, все, что вам нужно сделать, это запустить докер Jenkins в привилегированном режиме.