Как мне работать с тегами для развертывания стека докеров?

У меня есть файл docker compose (3), который я выполняю развертывание стека докеров на. Я делаю это в конвейере Jenkins.

Я работаю с тегами, когда устанавливаю переменную среды API_TAG , и (соответствующая часть) соответствующий файл компоновки докеров выглядит следующим образом.

version: '3'

services:
  api:
    image: registry:5000/api:${API_TAG}

Как мне работать с тегами для других служб в этом файле компоновки стека / докера, который я не просто создал? Конвейер, с которым я работаю, строит только приложение api, а не три базы данных, от которых оно зависит. Однако в этих базах данных также есть определенные теги (а не только последний ). Действительно ли мне нужно запрашивать в кластере роя текущие службы и теги для этой базы данных, чтобы развертывание стека докеров ничего не испортило?

0
задан 14 January 2018 в 23:53
1 ответ

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

Идея здесь в том, что вы можете создать файл компоновки (или составить файл и переопределить файл ), который будет работать с docker-compose up для локальной разработки и развертывание стека докеров для развертываний роя.

Альтернативный, но более сложный способ ИМО - запускать другие службы в их файле составления / стека и использовать их вручную - создали оверлейные сети, чтобы убедиться, что все они находятся в одной виртуальной сети докеров.

1
ответ дан 4 December 2019 в 16:03

Теги

Похожие вопросы