Моё весеннее загрузочное приложение использует mongodb для сохранения данных.С профилем dev, монгоклиент читает конфигурацию из application-dev.yml, как показано ниже:
data:
mongodb:
uri: mongodb://james:xxxxx@localhost:27017/?authMechanism=SCRAM-SHA-1&authSource=admin
все работает.
С профилем prod используйте docker-compose -f app.ymlчтобы запустить приложение, к моему удивлению, учетные данные в application-prod.yml вообще не загружаются (я ничего не видел в информации журнала)
Он может прочитать эту информацию из app.yml и mongodb.yml IУгадай!однако я не могу найти правильный способ их настройки, ниже приведены app.yml и mongodb.yml (не работают):
version: '2'
services:
hdshortvideo-app:
image: path of image
environment:
# - _JAVA_OPTIONS=-Xmx512m -Xms256m
- SPRING_PROFILES_ACTIVE=prod,swagger
- SPRING_DATA_MONGODB_URI=mongodb://hdshortvideo-mongodb:27017
- SPRING_DATA_MONGODB_DATABASE=shortvideo
- JHIPSTER_SLEEP=30 # gives time for the JHipster Registry to boot before the application
- SPRING_DATA_JEST_URI=http://hdshortvideo-elasticsearch:9200
hdshortvideo-mongodb:
extends:
file: mongodb.yml
service: hdshortvideo-mongodb
version: '2'
services:
hdshortvideo-mongodb:
image: mongo:3.6.3
environment:
- MONGO_INITDB_ROOT_USERNAME=james
- MONGO_INITDB_ROOT_PASSWORD=xxxx
ports:
- "27017:27017"
volumes:
- ~/volumes/HDShortVideo/mongodb/:/data/db/
они выдают ошибку «нет аутентифицированных пользователей».