Предварительные требования
Перед тем, как установить Docker, убедитесь, что ваша система соответствует следующим требованиям:
- 64-битная версия Linux
 - Ядро Linux версии 3.10 или новее
 - Доступ к привилегированному пользователю (sudo или root)
 - Доступ в интернет для загрузки пакетов
 - Минимум 4 ГБ оперативной памяти (рекомендуется)
 
Установка Docker на Ubuntu
Ubuntu — один из самых популярных дистрибутивов Linux, и установка Docker здесь максимально проста. Следуйте этим шагам, чтобы установить Docker на Ubuntu 20.04 LTS или выше:
1. Обновите информацию о пакетах
Перед установкой любого нового программного обеспечения рекомендуется обновить локальный индекс пакетов:
sudo apt update2. Установите необходимые пакеты
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release -y3. Добавьте официальный GPG-ключ Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg4. Настройте репозиторий Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null5. Обновите информацию о пакетах с новым репозиторием
sudo apt update6. Установите Docker Engine
sudo apt install docker-ce docker-ce-cli containerd.io -y7. Проверьте установку
sudo systemctl status dockerВы должны увидеть, что сервис активен и работает.
8. Запустите тестовый контейнер
sudo docker run hello-worldЕсли все настроено правильно, вы увидите приветственное сообщение от Docker.
Установка Docker на Debian
Если вы используете Debian, процесс установки Docker очень похож на Ubuntu:
1. Обновите информацию о пакетах
sudo apt update2. Установите необходимые пакеты
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release -y3. Добавьте официальный GPG-ключ Docker
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg4. Настройте репозиторий Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null5. Обновите информацию о пакетах
sudo apt update6. Установите Docker для Linux
sudo apt install docker-ce docker-ce-cli containerd.io -y7. Проверьте установку
sudo systemctl status docker
sudo docker run hello-worldУстановка Docker на CentOS/RHEL
Для CentOS 7 или 8, а также RHEL, процесс установки отличается от Debian-подобных систем:
1. Удалите старые версии (если есть)
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine2. Установите необходимые пакеты
sudo yum install -y yum-utils3. Настройте репозиторий Docker
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo4. Установите Docker Engine
sudo yum install docker-ce docker-ce-cli containerd.io -y5. Запустите и включите Docker
sudo systemctl start docker
sudo systemctl enable docker6. Проверьте установку
sudo systemctl status docker
sudo docker run hello-worldУстановка Docker на Fedora
Для пользователей Fedora процесс установки Docker следующий:
1. Удалите старые версии (если есть)
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine2. Установите необходимые пакеты
sudo dnf -y install dnf-plugins-core3. Настройте репозиторий Docker
sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo4. Установите Docker
sudo dnf install docker-ce docker-ce-cli containerd.io -y5. Запустите и включите Docker
sudo systemctl start docker
sudo systemctl enable docker6. Проверьте установку
sudo systemctl status docker
sudo docker run hello-worldНастройка Docker после установки
После того как вы успешно установили Docker для Linux, рекомендуется выполнить дополнительные шаги по настройке:
1. Добавьте пользователя в группу Docker
По умолчанию, команды Docker требуют привилегий root или использования sudo. Чтобы избежать постоянного ввода sudo, добавьте своего пользователя в группу docker:
sudo usermod -aG docker $USERПосле этого выйдите из системы и войдите снова, чтобы изменения вступили в силу. Теперь вы можете запускать команды Docker без sudo.
2. Настройте автозапуск Docker
sudo systemctl enable docker3. Установите Docker Compose
Docker Compose — мощный инструмент для определения и запуска многоконтейнерных приложений Docker. Установить его можно так:
sudo apt install docker-compose-plugin -y    # для Ubuntu/Debian
# или
sudo yum install docker-compose-plugin -y    # для CentOS/RHEL
# или
sudo dnf install docker-compose-plugin -y    # для FedoraАльтернативно можно установить Docker Compose из GitHub:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose4. Проверьте версию Docker Compose
docker-compose version
# или
docker compose version # для версии 2.xБазовые команды Docker
Теперь, когда вы установили Docker, вот несколько основных команд, которые помогут вам начать работу:
1. Проверка версии Docker
docker --version2. Поиск образов в Docker Hub
docker search ubuntu3. Загрузка образа
docker pull ubuntu4. Запуск контейнера
docker run -it ubuntu bash5. Просмотр запущенных контейнеров
docker ps6. Просмотр всех контейнеров (включая остановленные)
docker ps -a7. Остановка контейнера
docker stop <container_id>8. Удаление контейнера
docker rm <container_id>9. Просмотр локальных образов
docker images10. Удаление образа
docker rmi <image_id>Практическое применение Docker
Установив Docker для Linux, вы можете использовать его для множества практических задач:
1. Запуск веб-сервера в контейнере
docker run -d -p 80:80 nginxЭта команда запускает контейнер Nginx и перенаправляет порт 80 хоста на порт 80 контейнера.
2. Создание собственного образа с Dockerfile
Создайте файл с названием Dockerfile с следующим содержимым:
FROM ubuntu
RUN apt update && apt install -y nginx
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]Затем соберите образ:
docker build -t my-nginx-image И запустите контейнер из вашего образа:
docker run -d -p 8080:80 my-nginx-image3. Использование Docker Compose для многоконтейнерных приложений
Создайте файл docker-compose.yml:
version: '3'
services:
  web:
    image: nginx
    ports:
      - "80:80"
  database:
    image: mysql
    environment:
      MYSQL_ROOT_PASSWORD: exampleЗапустите многоконтейнерное приложение:
docker-compose up -dУстранение распространенных проблем при установке Docker
При установке Docker могут возникать различные проблемы, решить которых можно Вот решения наиболее распространенных из них:
1. Проблема: «Permission denied»
Если вы получаете ошибку «Permission denied» при попытке использовать Docker без sudo:
Решение: Перезагрузите систему или выполните:
newgrp docker
2. Проблема: «Cannot connect to the Docker daemon»
Решение: Проверьте, запущен ли демон Docker:
sudo systemctl start docker
3. Проблема: «Package docker-ce is not available»
Решение: Убедитесь, что репозитории настроены правильно
4. Проблема: «Error starting daemon: Error initializing network controller»
Решение: Перезапустите Docker:
sudo systemctl restart docker
Оптимизация использования Docker
После установки Docker вы можете выполнить дополнительные шаги для оптимизации его использования:
1. Настройте хранилище Docker
Создайте файл /etc/docker/daemon.json:
sudo mkdir -p /etc/dockerДобавьте следующее содержимое:
{
  "data-root": "/path/to/new/location"
}Затем перезапустите Docker:
sudo systemctl restart docker2. Ограничение ресурсов для контейнеров
docker run -d --name myapp --memory="512m" --cpus="1.0" myapp:latest3. Настройка логирования
Добавьте следующее в /etc/docker/daemon.json:
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  }
}Установка Docker на Linux открывает двери в мир контейнеризации, делая разработку, тестирование и развертывание приложений значительно проще и эффективнее. Следуя этому руководству, вы успешно установили Docker, настроили его и познакомились с основными командами и концепциями.
Docker для Linux — это не просто инструмент, это новая парадигма в управлении приложениями, которая помогает решать множество традиционных проблем с развертыванием и масштабированием.

 


