Local jar runner
Скрипт запускает backend-сервисы как Spring Boot jar'ы на локальной машине.
Spring Cloud Config Server стартует первым и читает конфигурацию из локального
config-repo.
Запуск
Из корня репозитория:
./deploy/local-jar/run-services.sh start
Что делает start:
- собирает
bootJarдляspring-cloud-config-serverи всех Spring Boot сервисов; - поднимает локальные
postgresиkafkaчерезdeploy/local-bundle/docker-compose.yml; - создаёт сервисные базы данных, если их ещё нет;
- запускает
spring-cloud-config-serverнаhttp://localhost:38888; - проверяет lookup конфигурации из
config-repo; - запускает остальные jar'ы в заданной последовательности.
Runtime-файлы создаются в build/local-jar-runtime:
pids/- PID процессов;logs/- stdout/stderr каждого сервиса.
Команды
./deploy/local-jar/run-services.sh status
./deploy/local-jar/run-services.sh logs pcp-request-service
./deploy/local-jar/run-services.sh stop
./deploy/local-jar/run-services.sh restart
Только сборка:
./deploy/local-jar/run-services.sh build
Только инфраструктура:
./deploy/local-jar/run-services.sh infra-up
./deploy/local-jar/run-services.sh infra-down
Настройки
По умолчанию config-server использует:
SPRING_PROFILES_ACTIVE=local
CONFIG_NATIVE_SEARCH_LOCATIONS=file:<repo>/config-repo
SERVER_PORT=38888
Сервисы используют:
SPRING_PROFILES_ACTIVE=local
SPRING_CLOUD_CONFIG_PROFILE=local
SPRING_CLOUD_CONFIG_LABEL=
CONFIG_SERVER_URI=http://localhost:38888
Полезные override'ы:
START_INFRA=false ./deploy/local-jar/run-services.sh start
INIT_DB=false ./deploy/local-jar/run-services.sh start
WAIT_FOR_APPS=false ./deploy/local-jar/run-services.sh start
JAVA_OPTS="-Xmx1g" ./deploy/local-jar/run-services.sh start
CONFIG_REPO_DIR=/path/to/config-repo ./deploy/local-jar/run-services.sh start
LOCAL_SERVICE_PROFILES=local,foo ./deploy/local-jar/run-services.sh start