В этом году я не завтыкал и все успел написать очень даже во время. Все еще нет смысла рассказывать, что такое Docker раз вы читаете это. В этом посте я расскажу как быстро и просто установить Docker и Docker-compose на Ubuntu 24.04.
Установка Docker
В репозитории Ubuntu может быть не самая последняя версия Docker. По этому мы будем устанавливать его из официального репозитория Docker.
Сначала обновите существующий список пакетов:
Затем установите несколько обязательных пакетов, которые позволяют apt использовать пакеты по HTTPS:
1
|
sudo apt install apt-transport-https ca-certificates curl software-properties-common
|
Добавляем ключ GPG официального репозитория Docker в вашу систему:
1
2
3
|
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
|
Добавляем репозиторий Docker:
1
2
3
4
|
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
Обновляем список пакетов:
Теперь надо убедится, что все нормально и установка будет из репозитория Docker, а не Ubuntu:
1
|
apt-cache policy docker-ce
|
На выходе видим плюс минус такую картину:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
docker-ce:
Installed: (none)
Candidate: 5:26.1.1-1~ubuntu.24.04~noble
Version table:
5:26.1.1-1~ubuntu.24.04~noble 500
500 https://download.docker.com/linux/ubuntu noble/stable amd64 Packages
5:26.1.0-1~ubuntu.24.04~noble 500
500 https://download.docker.com/linux/ubuntu noble/stable amd64 Packages
5:26.0.2-1~ubuntu.24.04~noble 500
500 https://download.docker.com/linux/ubuntu noble/stable amd64 Packages
5:26.0.1-1~ubuntu.24.04~noble 500
500 https://download.docker.com/linux/ubuntu noble/stable amd64 Packages
5:26.0.0-1~ubuntu.24.04~noble 500
500 https://download.docker.com/linux/ubuntu noble/stable amd64 Packages
|
Если все так, то прекрасно! Установится откуда надо и все будет хорошо.
Ну и финальный штрих, установим Docker:
1
|
sudo apt install docker-ce
|
Проверяем работает ли Docker
Для начала узнаел, что там с Docker’ом:
1
|
sudo systemctl status docker
|
На выходе:
1
2
3
4
5
6
7
8
9
10
11
|
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-04-01 21:30:25 UTC; 22s ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 7854 (dockerd)
Tasks: 7
Memory: 38.3M
CPU: 340ms
CGroup: /system.slice/docker.service
└─7854 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
|
Отлично! Все завелось и прекрасно работает. Давайте попробуем запустить какой нибудь контейнер:
1
|
sudo docker run hello-world
|
Если все хорошо, то на выходе увидим:
1
2
3
4
5
6
7
8
9
10
|
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:bfea6278a0a267fad2634554f4f0c6f31981eea41c553fdf5a83e95a41d40c38
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
|
Разрешаем не root пользователю запускать Docker
По умолчанию обычные пользователи не могут запускать докер без использования sudo, но все поправимо.
Лучше не стоит
Никогда так не делайте на продакшине! Это практически выдача рутовых прав пользователю
Добавляем своего пользователя в группу docker:
1
|
sudo usermod -aG docker ${USER}
|
Перелогиваемся и смело выполняем:
Устанавливаем Docker-compose
Запускаем эту команду для установки последней версии docker-compose, проверить какая версия является последней можно тут:
1
2
|
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.27.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
|
Делаем файл запускаемым:
1
|
chmod +x ~/.docker/cli-plugins/docker-compose
|
При желании можно настроить автодополнение команды для bash или zsh.
Проверяем, как все работает:
Увидим плюс минус:
1
|
Docker Compose version v2.27.0
|
Собственно все. Удачи!