fix(gui): удалять все legacy compose контейнеры wireguard-ui перед up
This commit is contained in:
@@ -325,6 +325,22 @@ EOF_COMPOSE
|
||||
# KeyError: 'ContainerConfig'. Предварительно удаляем старый контейнер по имени.
|
||||
if [[ "$compose_mode" == "legacy" ]]; then
|
||||
docker rm -f wireguard-ui >/dev/null 2>&1 || true
|
||||
|
||||
# Удаляем возможные старые контейнеры вида <project>_wireguard-ui
|
||||
# и контейнеры сервиса wireguard-ui по compose-label.
|
||||
local legacy_ids legacy_names
|
||||
legacy_ids="$(docker ps -aq --filter 'label=com.docker.compose.service=wireguard-ui' || true)"
|
||||
if [[ -n "$legacy_ids" ]]; then
|
||||
docker rm -f $legacy_ids >/dev/null 2>&1 || true
|
||||
fi
|
||||
|
||||
legacy_names="$(docker ps -a --format '{{.Names}}' | grep -E '(^|[_-])wireguard-ui($|[_-])' || true)"
|
||||
if [[ -n "$legacy_names" ]]; then
|
||||
while IFS= read -r cname; do
|
||||
[[ -n "$cname" ]] || continue
|
||||
docker rm -f "$cname" >/dev/null 2>&1 || true
|
||||
done <<< "$legacy_names"
|
||||
fi
|
||||
fi
|
||||
|
||||
(cd /opt/wireguard-ui && "${compose_cmd[@]}" up -d --remove-orphans)
|
||||
|
||||
Reference in New Issue
Block a user