Docker-compose build args

Столбики используются для указания версии контейнера. Версии можно найти на Dockerhub, и они обозначаются там как теги. Если версия не указана, то используется последняя версия. Например, добавим контейнер для веб-сервера Nginx: docker-nginx: image: nginx С этими данными в конфигурационном файле контейнер можно запускать.

Запуск контейнеров После того как docker настроен, необходимо запустить полученные контейнеры. Чтобы запустить группу контейнеров, настроенных в docker-compose. Например: cd losst-docker docker-compose up Как только вы это сделаете, контейнеры запустятся, а все их выходные потоки будут объединены в один, и вы сможете выводить информацию в терминале.

Если вы хотите запустить контейнеры в фоновом режиме, используйте опцию -d: docker-compose up -d Остановите контейнеры, запущенные в фоновом режиме, с помощью команды stop: docker-compose stop Команда down не только останавливает все запущенные контейнеры, но и удаляет их: docker-compose down Остановите пока этот контейнер, мы продолжим его настройку.

Контейнерные порты Контейнер работает, но он пока не очень полезен для нас. С помощью docker мы можем пробросить порт 80 контейнера на основную операционную систему и получить к ней доступ. Для этого мы используем директиву ports. Мы исправим это в ближайшее время. Монтирование папок Пункт volumes используется для монтирования хранилища или внешних папок на хосте. Это очень мощный инструмент, который можно использовать для монтирования всего, начиная от исходных файлов и заканчивая конфигурационными файлами в контейнере.

Это очень удобно. Настройка репозиториев Мы можем монтировать в контейнер не только внешние папки, но и репозитории, созданные в docker. Для этого сначала нужно добавить репозиторий в раздел основных томов.

Например: тома: большинству веб-приложений нужна база данных, например MySQL. Давайте добавим еще один контейнер для этой базы данных и добавим в него наш репозиторий.

Здесь необходимо указать имя базы данных и пароль root, который будет использоваться по умолчанию. Как видите, в переменных окружения нет ничего сложного. Настройка сети: Контейнерам необходимо общаться друг с другом. Для связи между контейнерами используются виртуальные сети, которые добавляются аналогично магазинам.

Сначала добавьте сеть в раздел global networks: networks: losst-network:, затем для каждого контейнера, который будет иметь доступ к этой сети, нужно добавить сеть в раздел networks. После этого контейнеры будут доступны по имени сети.

По аналогии с контейнером docker-mariadb, наш контейнер PhpMyAdmin доступен как docker-phpmyadmin. Модификация контейнера Это более сложный материал, но он даст вам практический опыт работы с Docker. В большинстве случаев можно не модифицировать контейнер; иногда необходимо скопировать в него определенные конфигурационные файлы или установить дополнительное программное обеспечение; в этих случаях docker-compose позволяет создавать собственные контейнеры на основе существующих образов.

Для этого нам нужно создать Dockerfile, который будет использоваться для создания контейнера. Давайте добавим контейнер php-fpm и установим в него некоторые php-расширения с помощью Dockerfile. Сначала создайте папку для файлов контейнера: mkdir php-fpm.


Навигация

Comments