Spring boot работает как проблемы с контейнером - PullRequest
0 голосов
/ 30 октября 2019

Я запускаю пружинную загрузку с REST API внутри контейнера докера. Кажется, что все работает нормально, когда я бегу от затмения или как банку. Но когда я запускаю его и запускаю, у меня возникают следующие проблемы

Первый Невозможно получить доступ к конечной точке REST в контейнере.

http://localhost:9000/ -> работает, но

http://localhost:9000/api/v1/test -> не идентифицирует.

Однако я могу запустить его из чванства.

Второй выпуск org.postgresql.util.PSQLException: ОШИБКА: в схеме отказано в разрешении <имя_схемы>

Однако я дал все разрешения для этой схемы, например

GRANT ALL ON SCHEMA < schemaname> TO < username>;
GRANT USAGE ON SCHEMA < schemaname> TO < username>;

Эти проблемы возникают только при попытке запустить из контейнера.

Команды, используемые для докера

docker run -p 9000:9000 < image name >

Использую пружинную загрузку 2.1.9

Dockerfile

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD run-app.sh run-app.sh
RUN chmod +x run-app.sh
EXPOSE 9000
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} dummy.jar
ENTRYPOINT ./run-app.sh

run-app.sh

java  $JAVA_OPTS -jar /dummy.jar

Мой postgresql Db работает в aws.

Моя весенняя загрузка можетначать, но только когда мой API запрашивает, я сталкиваюсь с исключением

Ответы [ 2 ]

0 голосов
/ 30 октября 2019

Для первого выпуска мне понадобятся дополнительные сведения.

Для второго вопроса проблема состоит в том, что два контейнера не находятся в одной сети, и, следовательно, служебный контейнер не может связаться с контейнером psql. Вы можете создать файл docker-compose.yml для запуска в той же сети. Или создайте сеть и присоединитесь к контейнерам в этой сети.

0 голосов
/ 30 октября 2019

Можете ли вы поделиться контентом dockerfile, если возможно, хотели бы посмотреть, какие команды вы дали с конечными точками. и для postgresql, который вы используете, он встроен в докер с приложением весенней загрузки или на другой сервер?

Я уже настроил весеннюю загрузку с помощью nginx и postgresql, но в разных серверах / контейнерах, которые работают довольно гладко на производстве.

...