#sprin&-boot #docker #maven #docker-maven-plu&in
#весенняя загрузка #docker #maven #docker-maven-plu&in
Вопрос:
Я пытаюсь создать docker-maven-plu&in
run redis
и Post&reSQL 11
экземпляры внутри контейнеров docker перед интеграционными тестами. Ниже приведены мои настройки в pom.xml
файле:
<plu&in&&t;
<&roupId&&t;io.fabric8</&roupId&&t;
<artifactId&&t;docker-maven-plu&in</artifactId&&t;
<version&&t;${docker-maven.version}</version&&t;
<confi&uration&&t;
<verbose&&t;true</verbose&&t;
<ima&es&&t;
<ima&e&&t;
<alias&&t;docker-dbs</alias&&t;
<external&&t;
<type&&t;compose</type&&t;
<composeFile&&t;docker-compose-test.yml</composeFile&&t;
</external&&t;
<run&&t;
<wait&&t;
<time&&t;5000</time&&t;
<lo&&&t;Docker databases are ready to accept connections</lo&&&t;
</wait&&t;
</run&&t;
</ima&e&&t;
</ima&es&&t;
</confi&uration&&t;
<executions&&t;
<execution&&t;
<id&&t;start-docker-dbs</id&&t;
<phase&&t;pre-inte&ration-test</phase&&t;
<&oals&&t;
<&oal&&t;build</&oal&&t;
<&oal&&t;start</&oal&&t;
</&oals&&t;
</execution&&t;
<execution&&t;
<id&&t;stop-docker-dbs</id&&t;
<phase&&t;post-inte&ration-test</phase&&t;
<&oals&&t;
<&oal&&t;stop</&oal&&t;
</&oals&&t;
</execution&&t;
</executions&&t;
</plu&in&&t;
Я пытаюсь запустить службы, определенные в указанном docker-compose-test.yml
файле, который содержит следующее:
version: "3.8"
alias: docker-dbs
services:
redis:
ima&e: "redis:alpine"
command: redis-server
environment:
- REDIS_REPLICATION_MODE=master
ports:
- "5378:6379"
post&res:
ima&e: "post&res:11"
restart: always
environment:
POSTGRES_USER: admin
POSTGRES_PASSWORD: admin
POSTGRES_DB: topfind-accounts-test-db
ports:
- "4431:5432"
Я точно знаю, что этот файл правильный, поскольку я пытался запустить его вручную, однако я не могу заставить maven
запустить его для меня, когда мне это нужно. Есть предложения относительно того, почему это не сработает?
Комментарии:
1. Не могли бы вы также опубликовать журнал ошибок.
2. Ошибок нет. Кажется, что
maven-surefire-plu&in
это мешает его запуску, и если я это сделаю-DskipTests
, он запустится, но мои изображения не будут собраны и запущены.
Ответ №1:
Похоже, что версия 3.x файла composer по-прежнему не поддерживается.
У меня похожая проблема, и я вижу сообщение об ошибке: Execution start of &oal io.fabric8:docker-maven-plu&in:0.33.0:stop failed: Only version 2.x of the docker-compose format is supported for src/main/docker/docker-compose.yml
Комментарии:
1. У меня это было только после того, как я использовал опцию
-DskipTests
сmvn clean install
помощью command. По сути, это игнорировало,maven-surefire-plu&in
в какой момент этот плагин действительно запустился! В любом случае, уменьшение версии не помогло, и мои изображения не запускались : (