Исправлена установка Docker Compose на Ubuntu

Этот коммит содержится в:
Виктор
2026-05-11 22:15:37 +09:00
родитель 029f27ba00
Коммит 0e540dca48
+40 -2
Просмотреть файл
@@ -25,18 +25,56 @@ require_root() {
fi
}
install_docker() {
info "Устанавливаю Docker"
if command -v docker >/dev/null 2>&1; then
warn "Docker уже установлен"
else
apt-get install -y ca-certificates curl gnupg lsb-release
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg
UBUNTU_CODENAME="$(. /etc/os-release && echo "${VERSION_CODENAME:-jammy}")"
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu ${UBUNTU_CODENAME} stable" > /etc/apt/sources.list.d/docker.list
if apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin; then
info "Docker установлен из официального репозитория"
else
warn "Официальный репозиторий Docker не сработал, ставлю docker.io из Ubuntu repo"
rm -f /etc/apt/sources.list.d/docker.list
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get install -y docker.io
fi
fi
if ! docker compose version >/dev/null 2>&1; then
warn "Docker Compose plugin недоступен, ставлю standalone docker-compose"
COMPOSE_VERSION="v2.27.0"
mkdir -p /usr/local/lib/docker/cli-plugins
curl -fsSL "https://github.com/docker/compose/releases/download/${COMPOSE_VERSION}/docker-compose-linux-$(uname -m)" -o /usr/local/lib/docker/cli-plugins/docker-compose
chmod +x /usr/local/lib/docker/cli-plugins/docker-compose
ln -sf /usr/local/lib/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose
fi
systemctl enable docker || true
systemctl restart docker || true
}
install_packages() {
info "Устанавливаю системные пакеты"
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get install -y \
ca-certificates curl git unzip zip rsync jq lsof \
ca-certificates curl git unzip zip rsync jq lsof gnupg lsb-release \
build-essential pkg-config \
python3 python3-venv python3-pip \
sqlite3 \
docker.io docker-compose-plugin \
adb fastboot \
openjdk-17-jdk \
udev
install_docker
}
create_user_and_dirs() {