Как остановить докер при выключении виртуальной машины под LinuxLinux

Anonymous
Как остановить докер при выключении виртуальной машины под Linux

Сообщение Anonymous »

У меня запущено 3 докер-контейнера, и я хочу остановить контейнер перед выключением виртуальной машины.
Я создаю один файл: /etc/systemd/system/unmount-disks.service p>

Код: Выделить всё

[Unit]
Description=Démontage des disques externes et NAS avant arrêt
DefaultDependencies=no
Before=docker.service shutdown.target reboot.target halt.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/unmount_disks.sh
RemainAfterExit=true
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

[Install]
WantedBy=halt.target reboot.target shutdown.target


а затем /usr/local/bin/unmount_disks.sh :< /p>

Код: Выделить всё

#!/bin/bash

# Arrêter tous les conteneurs sauf GitLab Runner et Portainer Agent

for CONTAINER in $(docker ps -q); do
CONTAINER_NAME=$(docker inspect --format '{{.Name}}' $CONTAINER | sed 's/\///g')
echo "Traitement du conteneur : $CONTAINER_NAME..."

if [ "$CONTAINER_NAME" == "gitlab-runner" ] || [ "$CONTAINER_NAME" == "portainer_agent" ]; then
echo "Conteneur $CONTAINER_NAME ignoré..."
else
echo "Arrêt du conteneur $CONTAINER_NAME..."
docker stop $CONTAINER
fi
done


Но у меня такая ошибка:

Код: Выделить всё

-- Boot 0a7bed5f09ac4ab1b414124571f070cc --
oct. 06 08:23:06 cicd systemd[1]: Starting Démontage des disques externes et NAS avant arrêt...
oct. 06 08:23:07 cicd unmount_disks.sh[2979]: error during connect: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.47/contai>
externes et NAS avant arrêt.


Кажется, служба докера отключается до моего сценария?
Если я запускаю скрипт под root вручную, все работает.

Подробнее здесь: https://stackoverflow.com/questions/790 ... nder-linux

Вернуться в «Linux»