Укажите имя контейнера с помощью тестовых контейнеров в Scala

Используя тестовые контейнеры для Scala dimafeng, я могу создать несколько контейнеров из одного образа:

class TestWithTwoDatabases extends FunSuite with ForEachTestContainer  {
  protected val inputContainer: PostgreSQLContainer = PostgreSQLContainer("postgres:13.3")
  protected val outputContainer: PostgreSQLContainer = PostgreSQLContainer("postgres:13.3")
  override val container: MultipleContainers = MultipleContainers(inputContainer, outputContainer)

  // Some integration tests
}

Как отличить их в консоли докера? В настоящее время у меня есть:

CONTAINER ID   IMAGE          NAMES
a2bee9488c02   postgres:13.3  youthful_archimedes # I'd like to have inputContainer here
2c645ed1c54c   postgres:13.3  agitated_cori       # I'd like to have outputContainer here

Как указать имена контейнеров при их создании в Scala?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
43
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я не думаю, что это возможно сделать. И непонятно, зачем вам это нужно.

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

Кроме того, установка фиксированного имени для контейнера сделает невозможным запуск тестов, требующих одного и того же имени контейнера, в среде CI с общим механизмом Docker.

Я хотел это для целей отладки. Но я действительно забыл подумать о среде CI. Спасибо, что указали на это, я найду другой способ отладки моего кода.

Noan Cloarec 18.03.2022 10:42

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

Kevin Wittek 18.03.2022 12:06

На самом деле я просто хотел поставить точку останова в коде, а затем открыть оболочку в контейнере и посмотреть, что написано в postgres.

Noan Cloarec 18.03.2022 15:11

Вы можете получить идентификатор контейнера из сеанса отладки. У них есть методы получения имени/идентификатора контейнера

Ivan Stanislavciuc 18.03.2022 15:56

Другие вопросы по теме