При установке Docker и Docker Compose в AlmaLinux 9 есть небольшие различия, по сравнению с Centos 7
Easy Install in scrypt:
bash <(curl -s https://mirror.galaxydata.ru/share/scripts/docker-alma9.sh)
Section 1. Установка Docker
Устанавливаем необходимые пакеты
dnf -y install -y yum-utils device-mapper-persistent-data lvm2
Добавляем репозиторий Docker CE
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
Проверяем
dnf list docker-ce
[...]
Available Packages
docker-ce.x86_64 3:19.03.12-3.el7 docker-ce-stable
Устанавливаем Docker-CE
dnf -y install docker-ce --nobest
Добавляем нашего пользователя, под которым настраиваем ОС, в группу Docker
usermod -aG docker $(whoami)
Применяем изменения к группам
newgrp docker
Добавляем сервис в автозагрузку и запускаем его
systemctl enable --now docker
Проверяем
$ docker -v
Docker version 20.10.18, build b40c2f6
Section 2. Установка Docker Compose
Скачиваем docker-compose в каталог /usr/local/bin/
curl -L "https://github.com/docker/compose/releases/download/v2.17.3/docker-compose-linux-x86_64" -o /usr/local/bin/docker-compose
Делаем файл исполняемым и создаем симлинк
chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
при ошибке
[19420] Error loading Python lib '/tmp/_MEIs7bLpR/libpython3.7m.so.1.0': dlopen: libcrypt.so.1: cannot open shared object file: No such file or directory
Установить
dnf in libxcrypt-compat
Проверяем
$ docker-compose -v
docker-compose version 1.26.2, build eefe0d31
Section 3. Настраиваем firewall
Для запуска docker compose с внешним доступом к веб-серверу на Centos 8 необходимо включить NAT
firewall-cmd --zone=public --add-masquerade --permanent
firewall-cmd --reload