Цель сегодняшнего моего повествования (на 29.06.2026) это разобрать как на систему Ubuntu 26.04 LTS Server возложить функционал использования Docker дабы обслуживаемые проекты имели под собой основную систему самого последнего релиза.
Шаг №1: Устанавливаю репозитарий Docker и ставлю самую последнюю версию Docker:
ekzorchik@srv-us2604a:~$ sudo apt-get install apt-transport-https ca-certificates curl -y
ekzorchik@srv-us2604a:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo: 'apt-key': command not found
curl: Failed writing body
ekzorchik@srv-us2604a:~$
почитав информацию на этот счет применительно к дистрибутиву Ubuntu 26.04 LTS пришел к упоминанию, что утилита apt-key полностью удалена, ранее она как несколько релизов LTS считалась устаревшей, а сейчас ее полностью выпилили.
С учетом вычитанной информации добавлять ключ нужно в каталог /etc/apt/keyrings:
ekzorchik@srv-us2604a:~$ sudo mkdir -p /etc/apt/keyrings
ekzorchik@srv-us2604a:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
ekzorchik@srv-us2604a:~$
ekzorchik@srv-us2604a:~$ sudo chmod a+r /etc/apt/keyrings/docker.gpg
ekzorchik@srv-us2604a:~$ gpg --show-keys /etc/apt/keyrings/docker.gpg
gpg: directory '/home/ekzorchik/.gnupg' created
gpg: keybox '/home/ekzorchik/.gnupg/pubring.kbx' created
gpg: /home/ekzorchik/.gnupg/trustdb.gpg: trustdb created
pub rsa4096 2017-02-22 [SCEA]
9DC858229FC7DD38854AE2D88D81803C0EBFCD88
uid Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]
ekzorchik@srv-us2604a:~$
ekzorchik@srv-us2604a:~$ sudo nano /etc/apt/sources.list.d/docker.list
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu resolute stable
ekzorchik@srv-us2604a:~$ sudo apt-get update
Hit:1 http://ru.archive.ubuntu.com/ubuntu resolute InRelease
Hit:2 http://ru.archive.ubuntu.com/ubuntu resolute-updates InRelease
Hit:3 http://ru.archive.ubuntu.com/ubuntu resolute-backports InRelease
Hit:4 http://security.ubuntu.com/ubuntu resolute-security InRelease
Get:5 https://download.docker.com/linux/ubuntu resolute InRelease [32.5 kB]
Get:6 https://download.docker.com/linux/ubuntu resolute/stable amd64 Packages [18.7 kB]
Fetched 51.2 kB in 0s (158 kB/s)
Reading package lists... Done
ekzorchik@srv-us2604a:~$
ekzorchik@srv-us2604a:~$ apt-cache search docker-ce
docker-ce-cli - Docker CLI: the open-source application container enginedocker-ce-rootless-extras - Rootless support for Docker.docker-ce - Docker: the open-source application container engine
ekzorchik@srv-us2604a:~$ apt-cache show docker-ce | grep Version | head -n1
Version: 5:29.6.1-1~ubuntu.26.04~resolute
ekzorchik@srv-us2604a:~$ sudo apt-get install -y docker-ce
Шаг №2: Чтобы можно было управлять Docker не от имени суперпользователя:
ekzorchik@srv-us2604a:~$ cat /etc/group | grep docker
docker:x:983:
ekzorchik@srv-us2604a:~$
ekzorchik@srv-us2604a:~$ sudo usermod -aG docker ${USER}
На заметку: для применения изменений делаем logoff/logon на системе, если подключены к системе по SSH, то отключаемся и заново подключаемся.
Шаг №3: Активирую сервис Docker:
ekzorchik@srv-us2604a:~$ sudo systemctl enable docker
Synchronizing state of docker.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable docker
ekzorchik@srv-us2604a:~$
ekzorchik@srv-us2604a:~$ sudo systemctl restart docker && sudo systemctl status docker | head -n5
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
Active: active (running) since Mon 2026-06-29 16:13:01 MSK; 12ms ago
Invocation: ba3b0313273547cf808ebb2df900de89
TriggeredBy: ● docker.socket
ekzorchik@srv-us2604a:~$
Шаг №4: Вывожу для себя информацию по установленному Docker:
ekzorchik@srv-us2604a:~$ docker --version && sudo docker info
Docker version 29.6.1, build 8900f1d
Client: Docker Engine - Community
Version: 29.6.1
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.35.0
Path: /usr/libexec/docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v5.2.0
Path: /usr/libexec/docker/cli-plugins/docker-compose
Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 29.6.1
Storage Driver: overlayfs
driver-type: io.containerd.snapshotter.v1
Logging Driver: json-file
Cgroup Driver: systemd
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
CDI spec directories:
/etc/cdi
/var/run/cdi
Swarm: inactive
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version: e53c7c1516c3b2bff98eb76f1f4117477e6f4e66
runc version: v1.3.6-0-g491b69ba
init version: de40ad0
Security Options:
apparmor
seccomp
Profile: builtin
cgroupns
Kernel Version: 7.0.0-22-generic
Operating System: Ubuntu 26.04 LTS
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.319GiB
Name: srv-us2604a
ID: 7e98411e-a062-47d0-b065-39c6b6b352dd
Docker Root Dir: /var/lib/docker
Debug Mode: false
Experimental: false
Insecure Registries:
::1/128
127.0.0.0/8
Live Restore Enabled: false
Firewall Backend: iptables
EnableUserlandProxy: true
UserlandProxyPath: /usr/bin/docker-proxy
ekzorchik@srv-us2604a:~$
Шаг №5: Устанавливаю самую последнюю версию Docker Compose на момент написания данной заметки (на 29.06.2026)
ekzorchik@srv-us2604a:~$ mkdir -p ~/.docker/cli-plugins
На заметку: Смотрю какой самый последний релиз через следующий URL (https://github.com/docker/compose/releases)
ekzorchik@srv-us2604a:~$ curl -SL https://github.com/docker/compose/releases/download/v5.2.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
ekzorchik@srv-us2604a:~$ chmod +x ~/.docker/cli-plugins/docker-compose
ekzorchik@srv-us2604a:~$ docker compose version
Docker Compose version v5.2.0
ekzorchik@srv-us2604a:~$
По итогу я для нового релиза Ubuntu, а именно Ubuntu 26.04 LTS Server сделал себе заметку, что нужно дабы использовать Docker & Docker compose в своих проектах и в проектах, которые поддерживаю как системный администратор.
на этом я прощаюсь, с уважением автор блога ekzorchik.