Подготовка простого файла docker-compose.yml
На этом шаге мы подготовим простой файл docker-compose.yml
. Перед началом работы необходимо установить Docker Compose. Docker Compose — это инструмент для определения и запуска многоконтейнерных Docker-приложений. С помощью Compose вы используете YAML-файл для настройки сервисов вашего приложения, а затем одной командой создаёте и запускаете все сервисы из конфигурации.
Сначала установим Docker Compose. Загрузим бинарный файл Docker Compose и сделаем его исполняемым.
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Теперь проверим установку, посмотрев версию Docker Compose.
docker-compose --version
Вы должны увидеть вывод, похожий на Docker Compose version v2.20.2
.
Далее создадим директорию для нашего проекта и перейдём в неё.
mkdir ~/project/my-docker-app
cd ~/project/my-docker-app
Теперь создадим файл docker-compose.yml
с помощью редактора nano
. Этот файл будет определять простой веб-сервис с использованием образа nginx
.
nano docker-compose.yml
В редакторе nano
вставим следующее содержимое:
version: "3.8"
services:
web:
image: nginx:latest
ports:
- "80:80"
Разберём этот файл docker-compose.yml
:
version: '3.8'
— указывает версию формата Compose-файла.
services:
— определяет сервисы нашего приложения.
web:
— имя нашего сервиса.
image: nginx:latest
— указывает Docker-образ для этого сервиса. В данном случае используется последняя версия образа nginx
.
ports:
— сопоставляет порты между хостом и контейнером. "80:80"
перенаправляет порт 80 на хосте на порт 80 в контейнере.
Сохраним файл, нажав Ctrl + X
, затем Y
и Enter
.
Перед запуском сервиса необходимо загрузить образ nginx:latest
.
docker pull nginx:latest
Эта команда загружает образ nginx:latest
из Docker Hub.