Здравствуйте, Aleksei_Lekomtsev, Вы писали:
D>>Нужно показать здесь compose.yaml, так как телепаты обычно отдыхают. D>>Возможно достаточно просто docker-compose up -f compose.yaml. Очень может быть, что образ приложения собирается автоматом, если в compose.yaml так указано.
A_L>
Апликации здесь нет. Подразумевается, что композом поднимается только окружение.
Тогда нужно запускать апликацию так, как обычно ты запускаешь у себя проекты на java. Подключение к посgтрес будет localhost:5432 — это скорее всего апликацией читается через аргументы командной строки или из переменных окружения — смотри код.
Dokerfile для самой апликации, скорее всего, нужен для деплоя апликации на сервер — или в докер, или в кубер.
Можешь попробовать собрать этот образ у себя и запустить как контейнер. Подключение к базе всё равно будет localhost:5432.
Спасибо за внимание
Как запустить приложение с compose.yaml, Dockerfile, Spring Boot
Всем привет! Подскажите, плиз, как запустить проект? Есть compose.yaml, в котором только postgres, Dockerfile c описанием образа для создания приложения и Spring Boot. Использовать docker-compose up чтобы запустить контейнер с postgres, потом docker build, docker run чтобы запустить контейнер с приложением? И приложением должно запуститься? Метод main в классе с SpringBootApplication не нужно запускать?
Здравствуйте, Aleksei_Lekomtsev, Вы писали:
A_L>Всем привет! Подскажите, плиз, как запустить проект? Есть compose.yaml, в котором только postgres, Dockerfile c описанием образа для создания приложения и Spring Boot. Использовать docker-compose up чтобы запустить контейнер с postgres, потом docker build, docker run чтобы запустить контейнер с приложением? И приложением должно запуститься? Метод main в классе с SpringBootApplication не нужно запускать?
Нужно показать здесь compose.yaml, так как телепаты обычно отдыхают.
Возможно достаточно просто docker-compose up -f compose.yaml. Очень может быть, что образ приложения собирается автоматом, если в compose.yaml так указано.
Спасибо за внимание
Re[2]: Как запустить приложение с compose.yaml, Dockerfile, Spring Boot
D>Нужно показать здесь compose.yaml, так как телепаты обычно отдыхают. D>Возможно достаточно просто docker-compose up -f compose.yaml. Очень может быть, что образ приложения собирается автоматом, если в compose.yaml так указано.
D>Апликации здесь нет. Подразумевается, что композом поднимается только окружение. D>Тогда нужно запускать апликацию так, как обычно ты запускаешь у себя проекты на java. Подключение к посgтрес будет localhost:5432 — это скорее всего апликацией читается через аргументы командной строки или из переменных окружения — смотри код.
Здравствуйте, Aleksei_Lekomtsev, Вы писали:
D>>Апликации здесь нет. Подразумевается, что композом поднимается только окружение. D>>Тогда нужно запускать апликацию так, как обычно ты запускаешь у себя проекты на java. Подключение к посgтрес будет localhost:5432 — это скорее всего апликацией читается через аргументы командной строки или из переменных окружения — смотри код.
A_L>В build.gradle есть
A_L>
Ну значит, если ты в профиле dev, то перед запуском проекта надо установить соответсвующие переменные окружения: DB_URL, DB_USER, DB_PASS.
DB _URL должен направляться на localhost:5432, DB_USER и DB_PASS указаны в файле compose.yaml:
services:
postgres:
image: 'postgres:latest'
environment:
- 'POSTGRES_DB=xxx' <-- скорее всего в connection string (DB_URL) надо добавить имя базы, указанное здесь - читай доки постгреса
- 'POSTGRES_PASSWORD=xxx' <-- здесь DB_PASS
- 'POSTGRES_USER=xxx' <-- здесь DB_USER
ports:
- '5432:5432'
EDIT: Я с java работал только из Android Studio. Подразумеваю, что ты умеешь запускать java проекты и выбирать профили.