Создание объектов JOOQ в процессе сборки образа Docker с использованием контейнера PostgreSQL.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Создание объектов JOOQ в процессе сборки образа Docker с использованием контейнера PostgreSQL.

Сообщение Anonymous »

Я работаю над побочным проектом и хочу создать docker-compose для успешного развертывания проекта локально.
Основной процесс:
  • Разверните контейнер PostgresSQL с помощью файла init.sql.
  • Создайте код JOOQ для приложения (на этапе сборки образа).
  • Скопируйте сгенерированный код в изображение и запуск приложения
Однако, что бы я ни делал, контейнер, который я пытаюсь построить, не может подключиться к контейнеру PostgresSQL и сгенерируйте код.
Я пробовал использовать ссылки, сети, но ничего не помогло.
Docker Compose:

Код: Выделить всё

services:
database:
container_name: database
hostname: database
image: postgres:latest
ports:
- "5432:5432"
environment:
- PGUSER=user
- POSTGRES_USER=user
- POSTGRES_PASSWORD=password
- POSTGRES_DB=db
volumes:
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
healthcheck:
test: [ "CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}" ]
interval: 2s
timeout: 5s
retries: 5
networks:
-mynet

server:
build:
context: .
dockerfile: Dockerfile
depends_on:
database:
condition: service_healthy
ports:
- "8080:8080"
networks:
-mynet

networks:
mynet:
driver: bridge
Файл Docker:

Код: Выделить всё

FROM maven:3.9.7-amazoncorretto-17 AS build
COPY models models

RUN mvn clean package -f models/pom.xml -Plocal
pom.xml:

Код: Выделить всё

 & l t ; p r o j e c t   x m l n s = & q u o t ; h t t p : / / m a v e n . a p a c h e . o r g / P O M / 4 . 0 . 0 & q u o t ; < b r   / >                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0

com.abl.rjmdb
models
1.0-SNAPSHOT


17
17
UTF-8
3.19.8
42.7.3




org.jooq
jooq
${jooq.version}


org.jooq
jooq-meta
${jooq.version}


org.jooq
jooq-codegen
${jooq.version}


org.postgresql
postgresql
${postgresql.version}





local

org.postgresql.Driver
jdbc:postgresql://database:5432/db
user
password
public




org.jooq
jooq-codegen-maven
${jooq.version}



generate-sources

generate






${database.driver}
${database.url}
${database.user}
${database.password}



.*
${database.schema}


com.abl.rjmdb.model.jooq
${project.build.directory}/generated-sources/jooq










Я получаю сообщение об ошибке:
если я использую хост «базы данных» -

11.96 [ОШИБКА] Не удалось выполнить цель org.jooq:jooq-codegen-maven:3.19.8:generate (по умолчанию) в моделях проекта: Ошибка при запуске инструмента генерации кода jOOQ: Неудачная попытка подключения. Неизвестная база данных хостов -> [Справка 1]

если я использую хост «127.0.0.1» -
Не удалось выполнить цель org.jooq:jooq-codegen-maven:3.19.8:generate (по умолчанию) в моделях проекта: Ошибка при запуске инструмента генерации кода jOOQ: Соединение с 127.0.0.1:5432 отклонено. Убедитесь, что имя хоста и порт верны и что почтмейстер принимает соединения TCP/IP. Соединение отклонено

если я использую IP-адрес, полученный от докера, проверьте :
< blockquote>
Не удалось выполнить цель org.jooq:jooq-codegen-maven:3.19.8:generate (по умолчанию) в моделях проекта: ошибка при запуске инструмента генерации кода jOOQ: подключение к 172.17.0.2:5432 отклонено . Убедитесь, что имя хоста и порт верны и что почтмейстер принимает соединения TCP/IP. Соединение отклонено

Есть идеи, как можно это сделать?
Я проверял бесчисленное количество раз, контейнер PostgresSQL работает, и я могу к нему подключиться с хоста.
Может быть, не стоит генерировать код JOOQ внутри образа докера?
Я прикрепляю репозиторий на случай, если он каким-то образом будет уместен: https://github.com/AmitBarlev /RJMDB

Подробнее здесь: https://stackoverflow.com/questions/786 ... stgresql-c
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Развертывание приложения Spring Boot Jooq в wildfly не загружает классы Jooq
    Anonymous » » в форуме JAVA
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous
  • JOOQ + Gradle: как определить несколько схем для генератора JOOQ?
    Anonymous » » в форуме JAVA
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous
  • В JOOQ, почему у меня была ошибка «не могу найти сеттер, adder и поле в org.jooq.util.jaxb.generator для 'MasterDatables
    Anonymous » » в форуме JAVA
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • В JOOQ, почему у меня была ошибка «не могу найти сеттер, adder и поле в org.jooq.util.jaxb.generator для 'MasterDatables
    Anonymous » » в форуме JAVA
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Docker и grpc: запрос клиента с использованием имени образа контейнера
    Гость » » в форуме Php
    0 Ответы
    42 Просмотры
    Последнее сообщение Гость

Вернуться в «JAVA»