Пошук уроків, статей та іншого контенту
Встановимо Docker Desktop або Docker Engine і перевіримо роботу середовища за допомогою першої команди.
Docker — це платформа для запуску застосунків у контейнерах. Контейнер містить застосунок і необхідні для його роботи файли та залежності, тому його можна запускати в однаковий спосіб на різних комп’ютерах.
Для роботи Docker потрібні:
Docker CLI — команда docker, за допомогою якої ми керуємо Docker;
Docker Engine — фоновий сервіс, що створює та запускає контейнери;
образи — шаблони, з яких створюються контейнери;
контейнери — запущені екземпляри образів.
На Windows і macOS зазвичай використовують Docker Desktop. На Linux можна встановити безпосередньо Docker Engine або також використовувати Docker Desktop.
Перед встановленням переконайтеся, що використовується 64-бітна версія Windows 10 або Windows 11 і доступна віртуалізація.
Завантажте інсталятор Docker Desktop з офіційного сайту Docker.
Запустіть інсталятор.
Під час встановлення залиште увімкненою опцію використання WSL 2, якщо вона доступна.
Перезавантажте комп’ютер, якщо інсталятор попросить це зробити.
Запустіть Docker Desktop.
Дочекайтеся, поки Docker Desktop повідомить, що Docker запущено.
WSL 2 — це підсистема Windows, яку Docker Desktop використовує для запуску Linux-контейнерів.
Docker Desktop підтримує комп’ютери Mac на процесорах Intel і Apple Silicon.
Завантажте версію Docker Desktop, що відповідає вашому процесору.
Відкрийте завантажений файл.
Перетягніть Docker у папку Applications, якщо інсталятор використовує такий спосіб.
Запустіть Docker Desktop із папки Applications.
Підтвердьте необхідні дозволи macOS.
Дочекайтеся запуску Docker.
Після запуску Docker Desktop його значок має з’явитися в системному меню. Docker готовий до роботи, коли програма не показує помилок запуску.
Наведені команди підходять для актуальних версій Ubuntu, зокрема Ubuntu 22.04 та Ubuntu 24.04.
Спочатку оновіть список пакетів і встановіть необхідні утиліти:
sudo apt-get update
sudo apt-get install -y ca-certificates curlСтворіть каталог для ключів пакетного репозиторію Docker:
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:
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Встановіть Docker Engine та додаткові компоненти:
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginПісля встановлення Docker Engine зазвичай запускається автоматично. Перевірити стан сервісу можна командою:
sudo systemctl status dockerДля виходу з перегляду стану натисніть q.
Найпростіший спосіб перевірити Docker — запустити спеціальний образ hello-world:
docker run hello-worldУ Linux, якщо поточний користувач ще не має дозволу працювати з Docker, використайте:
sudo docker run hello-worldПід час виконання команди Docker:
перевіряє, чи є образ hello-world локально;
якщо образу немає, завантажує його з реєстру образів;
створює контейнер на основі образу;
запускає контейнер;
виводить повідомлення про успішну роботу Docker.
Наприкінці у виведенні має бути повідомлення:
Hello from Docker!Це означає, що Docker CLI може звертатися до Docker Engine, а Engine може завантажувати образи та запускати контейнери.
Команда docker --version показує версію Docker CLI:
docker --versionПриклад результату:
Docker version 28.0.0, build ...Команда docker version показує інформацію про клієнт і сервер Docker:
docker versionУ цьому виведенні:
секція Client описує Docker CLI;
секція Server описує Docker Engine.
Якщо секція Server не відображається або з’являється помилка підключення, Docker Engine не запущений або поточний користувач не має до нього доступу.
Після hello-world можна запустити невеликий контейнер Alpine Linux:
docker run --rm alpine echo "Docker працює"Тут:
docker run створює та запускає контейнер;
alpine — назва образу Alpine Linux;
echo "Docker працює" — команда всередині контейнера;
--rm автоматично видаляє контейнер після завершення його роботи.
Очікуваний результат:
Docker працюєКонтейнер завершується одразу після виконання команди echo. Це нормально: контейнер працює доти, доки працює його основний процес.
sudo в LinuxЗа замовчуванням у деяких системах команди Docker потрібно виконувати через sudo. Щоб дозволити поточному користувачу працювати з Docker без sudo, додайте його до групи docker:
sudo usermod -aG docker "$USER"Після цього вийдіть із системи та увійдіть знову. Також можна перезавантажити комп’ютер.
Перевірте доступ:
docker run hello-worldДодавання користувача до групи docker надає значні права в системі. На особистому комп’ютері розробника це типовий спосіб роботи, але на спільних або серверних системах права доступу потрібно налаштовувати обережно.
docker: command not foundDocker CLI не встановлено або команда не доступна в змінній середовища PATH.
Що перевірити:
чи завершилося встановлення без помилок;
чи запущено Docker Desktop;
чи відкрито новий термінал після встановлення.
Cannot connect to the Docker daemonDocker CLI встановлено, але Docker Engine не запущений або недоступний.
Для Docker Desktop:
запустіть Docker Desktop;
дочекайтеся повного запуску;
повторіть команду.
Для Ubuntu перевірте сервіс:
sudo systemctl status dockerЯкщо сервіс зупинений, запустіть його:
sudo systemctl start dockerpermission denied while trying to connectПоточний користувач не має доступу до Docker Engine.
Тимчасове рішення:
sudo docker run hello-worldПостійне рішення для Linux — додати користувача до групи docker, вийти із системи та увійти знову.
Найчастіша причина — вимкнена апаратна віртуалізація або проблеми з WSL 2.
Перевірте:
чи ввімкнена віртуалізація в BIOS або UEFI;
чи встановлено WSL 2;
чи відповідає система вимогам Docker Desktop;
чи виконано перезавантаження після встановлення.
Docker Desktop використовують переважно на Windows і macOS.
На Linux можна встановити Docker Engine через офіційний репозиторій Docker.
Команда docker run hello-world перевіряє зв’язок між Docker CLI та Docker Engine.
Образ є шаблоном, а контейнер — його запущеним екземпляром.
Помилки підключення зазвичай означають, що Docker Engine не запущений або користувач не має необхідних прав.