Рубрики
Uncategorized

#021 Docker-Compose

ВВЕДЕНИЕ Это часть 21 из путешествий, это долгий путь (360 день), так что иди, пожалуйста, ч … Tagged with Docker, DevOps, Tulciory.

Devopsjourney (54 серия деталей)

Это часть 21 из путешествий, это долгий путь (360 день), так что иди, пожалуйста, проверьте предыдущие детали, и если вам нужно ходить в путешествие со мной, пожалуйста, следуйте, потому что я могу опубликовать более одного раза в 1 день Но, конечно, я буду публиковать ежедневно, по крайней мере, один 😍.

И я буду охватывать множество инструментов по мере продвижения дальше.

Если вы следите за частью 9

cd location/DevOpsJourney/
git pull
cd app_021/

Замените местоположение, где вы положите Devopsjourney

Если ваш новый перейдите в часть 9 и сделайте те же шаги, загрузите старые файлы лекций и новые.

Django-это Python Web-Framework. В этой части я буду использовать реального мира, который станет Django, который готов к производству. Наш проект будет подключаться к Postgres также в качестве базы данных.

Чтобы создать наши изображения и запустить наши контейнеры, прежде чем мы запустим их вручную, и трудно вспомнить, что нам нужно пройти в виде переменных средств, таких как порт, также если мы дадим наш Dockerfile кому -то, вероятно, он не знает, что пройти. Итак, здесь появилась роль нашего докера, чтобы сделать жизнь все и более легкой.

Docker-Compose использует YAML (еще один язык разметки) для выполнения скучной работы вместо нас. Итак, как это работает, просто по умолчанию файл YAML или YML в проекте по умолчанию-это файл с именем docker-compose.yml, в нашем проекте у нас нет, у нас есть свои собственные файлы, называемые local.yml и Production.yml, один для местного развития, а другой для производства.

Обычно, когда мы не используем Docker, приложение Django работает с

python manage.py runserver 0.0.0.0:8000

8000 — это порт здесь, поэтому нам нужно открыть этот порт в нашем докере.

Я собираюсь заглянуть внутрь локации.

Мы можем увидеть здесь много вещей Но если вы следуете за мной с начала путешествия, вам будет удобно с тем, что вы видите.

Поговорим о каждой строке здесь:

  1. Версия: «3». Означает, что мы используем Docker-Compose API версию 3 (я расскажу больше в предстоящей части)
  2. Объемы здесь мы настраиваем 2 постгрес -тома один для данных и один для резервного копирования (мы также говорим о объемах раньше)
  3. Услуги здесь важная часть
  4. Django — это название нашего сервиса, Build Нам нужно указать путь Dockerfile в моем случае, он расположен по адресу ./compecpet/local/django/dockerfile
  5. Изображение — это имя нашего изображения
  6. container_name Имя нашего контейнера
  7. DEVELICE_ON POSTGRES это означает, что ей нужна служба Postgres
  8. тома нашего Джанго
  9. Файлы среды давайте посмотрим на .django Это некоторые префиксированные переменные, которые мы можем использовать позже на нашей разработке
  10. Порты — это порт, который нам нужно открыть в нашем случае, 8000
  11. Команда:/Запуск это сценарий, который нам нужно запустить, давайте посмотрим на него Первые строки мы говорили о них раньше
  12. Python Manage.py Migrate Ith Django, чтобы перенести наши изменения в базу данных
  13. Python Manage.py Runserver_plus 0.0.0.0:8000 Это способ запустить наш сервер

То же самое для Postgres , это заглядывает внутрь.

Поскольку мы используем модифицированный файл (local.yml), в состоянии запустить его, мы должны использовать -f, который соответствует файлу, который нам нужен сразу после докер-состав

docker-compose -f local.yml up -d

Здесь нужно создавать и запустить контейнеры -D Здесь предназначен для работы в фоновом режиме после ожидания некоторого времени, он будет загружать много вещей, потому что это приложение для реального мира.

docker ps -a

Мы видим, что у нас есть контейнеры, работающие на заднем плане.

В нашем браузере ходи

127.0.0.1:8000

У нас есть веб -сайт, работающий только с одной командой, потрясающе!

Иди и посмотри на Dockerfile и попытайтесь понять его, также посмотрите на файл production.yml

Devopsjourney (54 серия деталей)

Оригинал: «https://dev.to/elkhatibomar/021-docker-compose-5604»