Начало работы с основами Docker

Тег FROM в Dockerfile

В Dockerfile инструкция FROM указывает базовый образ, на основе которого будет создан результирующий образ.

Это может быть образ из общедоступного реестра, например FROM ubuntu:20.04, или локально доступный образ, например FROM local-image:1.0.

Пример :

Тег EXPOSE в Dockerfile

В Dockerfile инструкция EXPOSE информирует Docker о том, что контейнер будет прослушивать указанные сетевые порты во время выполнения. Это фактически не публикует порты, но позволяет привязывать их при запуске контейнера.

Инструкцию EXPOSE можно использовать несколько раз в одном Dockerfile, чтобы сообщить Docker о нескольких портах, которые контейнер будет прослушивать.

Пример :

Это сообщит докеру, что контейнер будет прослушивать TCP-порты 5000 и 8080.

Инструкция EXPOSE только информирует Docker о портах, которые контейнер будет прослушивать, но фактически не публикует порты на хосте. Чтобы опубликовать порт контейнера на хосте, вы можете использовать параметр -p или --publish при запуске docker run.

Пример :

Это запустит контейнер и опубликует оба порта 5000 и 8080 на хосте, позволяя трафику проходить в контейнер через эти порты.

Тег RUN в Dockerfile

В Dockerfile инструкция RUN используется для выполнения команды в оболочке операционной системы образа.

Инструкция RUN принимает в качестве аргумента команду, которая затем выполняется в оболочке операционной системы образа.

Пример :

Это запустит apt-get update команд в оболочке.

Тег ENTRYPOINT в Dockerfile

В Dockerfile инструкция ENTRYPOINT используется для настройки контейнера, который будет работать как исполняемый файл.

Инструкция ENTRYPOINT задает команду, которая будет выполняться при старте контейнера. Эта команда выполняется в той же оболочке, что и CMD. Вы можете передать аргументы инструкции ENTRYPOINT, которые будут переданы команде при ее выполнении.

Пример :

Это ENTRYPOINT указание, что команда /usr/bin/java .

Вы также можете использовать инструкцию CMD для предоставления аргументов по умолчанию для команды ENTRYPOINT, например:

В приведенном выше примере при запуске контейнера он выполнит /usr/bin/python3 -m http.server 8080.

Различные способы написания команд

CMD

  1. Формат оболочки -> CMD echo «привет»
  2. Формат исполняемого файла -> CMD ["эхо", "привет"]

ВХОДНАЯ ТОЧКА

  1. Формат оболочки -> ENTRYPOINT echo «hello»
  2. Формат исполняемого файла -> ENTRYPOINT ["эхо", "привет"]

Что такое docker-compose?

Предположим, что есть некоторая платформа с несколькими компонентами, поэтому на основе нескольких компонентов нам пришлось создать несколько файлов докеров для каждого компонента, поэтому с помощью docker compose мы можем создать один файл yaml для всех этих компонентов вместо создания нескольких докеров. файлы.

В основном он используется для интеграции нескольких контейнеров вместе для уменьшения сложности.

Пример: OTT-платформа Netflix содержит несколько компонентов.

Docker Compose — это инструмент для определения и запуска многоконтейнерных приложений Docker. Он позволяет вам определять службы, сети и тома вашего приложения в одном файле docker-compose.yml, а затем запускать, останавливать и управлять этими службами с помощью одной команды docker-compose.

Создание нескольких файлов докеров для разных компонентов невозможно, так как это создает проблемы при отладке и обработке проблем, а также создает сложность. В этом случае будет легко создать файл Docker-compose, который объединит все вместе и
отладку.

С Compose вы используете файл YAML для настройки служб вашего приложения. Затем с помощью одной команды вы создаете и запускаете все службы из вашей конфигурации.

Чтобы запустить приложение, вы можете использовать команду docker-compose up.

Вы можете использовать docker-compose down для остановки и удаления контейнеров, сетей, томов и образов, созданных docker-compose up.

Вы также можете использовать docker-compose ps для просмотра состояния служб, docker-compose logs для просмотра журналов служб и docker-compose exec для выполнения команды в работающем контейнере.

Пример :

У нас может быть Dockerfile в файле Docker-compose.

Используя метку depend_on, мы можем соединить вместе несколько служб, присутствующих в любом приложении, таких как интерфейс, серверная часть, база данных.

Что такое ГИТ?

Git — это система контроля версий, которая широко используется для разработки программного обеспечения и других задач контроля версий.

Git позволяет вам отслеживать изменения, внесенные в ваш код, а также сотрудничать с другими людьми над одной кодовой базой. Вы можете использовать Git для создания центрального репозитория кода, над которым могут работать несколько человек, и вы можете использовать Git для отслеживания различных версий вашего кода и объединения изменений, сделанных разными людьми, в одну версию.

С помощью Git вы также можете создавать «ветви» своего кода, что позволяет вам работать над новыми функциями или исправлениями ошибок изолированно, а затем объединять ваши изменения обратно в основную версию кода, когда вы будете готовы.

Это позволяет вам работать над несколькими функциями или исправлениями одновременно, не беспокоясь о том, что они будут мешать друг другу.

Что мы можем сделать с помощью git?

  1. Нажмите на изменения
  2. Потяните изменения
  3. Отменить изменения
  4. Объединить изменения
  5. Удалить версию
  6. Добавить новую версию
  7. Сбросить изменения

Гитхаб против Гитбаша

GitHub и Git Bash связаны с Git, но используются для разных целей.

GitHub — это веб-платформа для размещения и совместной работы над репозиториями Git.

GitHub — это веб-платформа, предоставляющая хостинг для репозиториев Git. Это позволяет вам хранить свой код в Интернете, делиться им с другими людьми и сотрудничать с другими над одной кодовой базой.

Git Bash — это интерфейс командной строки для взаимодействия с системой контроля версий Git. Он позволяет выполнять различные задачи, связанные с Git, такие как создание нового репозитория, внесение изменений и просмотр истории коммитов.

Git Bash можно установить в системах Windows, Linux и macOS, и он предоставляет пользователям среду, подобную Unix, для выполнения команд Git.

Что такое репозиторий?

В Git репозиторий — это каталог, содержащий все файлы проекта, а также историю изменений, внесенных в эти файлы.

Репозиторий может содержать несколько веток. Когда вы создаете новую ветку в репозитории, вы, по сути, создаете новую копию репозитория, которая начинается с того же места, что и ветка, из которой вы ее создали, но будет иметь свой собственный набор коммитов.

Эти ветки позволяют вам одновременно работать с разными версиями кода, а затем объединять их вместе, когда вы будете готовы.

Что мы можем сделать с помощью GIT CLI

  1. Инициализация нового репозитория: вы можете использовать команду «git init», чтобы инициализировать новый репозиторий в текущем каталоге.
  2. Добавление изменений: вы можете использовать команду «git add», чтобы внести изменения для фиксации.
  3. Фиксация изменений: вы можете использовать команду «git commit», чтобы сохранить эти изменения в репозиторий.
  4. Просмотр истории коммитов: вы можете использовать команду «git log» для просмотра истории коммитов репозитория.
  5. Управление ветвями: вы можете использовать команду «git branch» для просмотра списка ветвей в репозитории. А также используется для создания новых веток.
  6. Изменение веток: вы можете использовать команду «git checkout» для переключения между ветками.
  7. Проверка состояния: команда «git status» используется для просмотра текущего состояния репозитория, включая информацию о том, в какой ветке вы сейчас находитесь, какие файлы были изменены, но еще не зафиксированы, и какие файлы находятся в промежуточной области. .
  8. Получение справки: вы можете использовать команду «git help», чтобы получить справку по конкретной команде Git.

Если этот пост был полезен, подпишитесь и нажмите кнопку аплодисментов 👏 ниже, чтобы выразить свою поддержку 😄

_Спасибо, что прочитали💚

_Раджани 🌻✨