Files
Ubuntu/🚀 Установка Docker на Ubuntu.md

77 lines
2.7 KiB
Markdown

Докумментация взята с [оффициального сайта](https://docs.docker.com/engine/install/ubuntu/)
Поддерживаемые версии Ubuntu:
- **Ubuntu Oracular 24.10**
- **Ubuntu Noble 24.04 (LTS)**
- **Ubuntu Jammy 22.04 (LTS)**
___
## 1. Удалите старые пакеты
Чтобы избежать конфликтов версий — удалите все возможные устаревшие пакеты Docker:
```bash
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do
sudo apt-get remove $pkg
done
```
---
## 2. Добавьте официальный репозиторий Docker
Установите зависимости и добавьте GPG-ключ для безопасного скачивания:
```bash
sudo apt-get update
sudo apt-get install -y ca-certificates curl
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
```
Подключите репозиторий:
```bash
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
```
---
## 3. Установите Docker
Установите сам Docker Engine и сопутствующие пакеты (~431 MB):
```bash
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
```
---
## 4. Проверьте установку
Запустите тестовый контейнер:
```bash
sudo docker run hello-world
```
Если видите сообщение `Hello from Docker!` — установка прошла успешно ✅
---
## 5. Настройте права пользователя
Чтобы не использовать `sudo` при каждой команде:
```bash
sudo usermod -aG docker $USER
newgrp docker
```
---
📌 Теперь Docker установлен корректно и готов к работе.
>[!note] Рекомендация
Используйте **Compose V2** с помощью команды `docker compose` вместо устаревшего `docker-compose`
> [!note] Рекомендация
> При возникновении ошибок — выполняйте `docker login` на сервере.
> Это позволит избежать ошибок с лимитами анонимных pull-запросов на Docker Hub.