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 — это порт здесь, поэтому нам нужно открыть этот порт в нашем докере.
Я собираюсь заглянуть внутрь локации.
Мы можем увидеть здесь много вещей Но если вы следуете за мной с начала путешествия, вам будет удобно с тем, что вы видите.
Поговорим о каждой строке здесь:
- Версия: «3». Означает, что мы используем Docker-Compose API версию 3 (я расскажу больше в предстоящей части)
- Объемы здесь мы настраиваем 2 постгрес -тома один для данных и один для резервного копирования (мы также говорим о объемах раньше)
- Услуги здесь важная часть
- Django — это название нашего сервиса, Build Нам нужно указать путь Dockerfile в моем случае, он расположен по адресу ./compecpet/local/django/dockerfile
- Изображение — это имя нашего изображения
- container_name Имя нашего контейнера
- DEVELICE_ON POSTGRES это означает, что ей нужна служба Postgres
- тома нашего Джанго
- Файлы среды давайте посмотрим на .django Это некоторые префиксированные переменные, которые мы можем использовать позже на нашей разработке
- Порты — это порт, который нам нужно открыть в нашем случае, 8000
- Команда:/Запуск это сценарий, который нам нужно запустить, давайте посмотрим на него Первые строки мы говорили о них раньше
- Python Manage.py Migrate Ith Django, чтобы перенести наши изменения в базу данных
- 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»