Переменные среды загрузки Gradle Spring во встроенное приложение vuejs - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть приложение spring boot 2 со встроенным vuejs концом шрифта на /static с использованием gradle 5.1.Приложение предназначено для размещения на разных серверах, поэтому URL-адрес API для приложения vuejs должен быть динамическим.

Самое разумное решение, которое я могу придумать, - это установить API_IP переменные среды на серверах и позволить приложению vuejs получить их следующим образом:

let url = `http://${process.env.API_IP}:9090/api`;

if (process.env.NODE_ENV === 'development') {
    url = `http://localhost:8090/api`;
}

скрипт сборки gradle:

bootJar {
    dependsOn ':ui:jar'

    into('BOOT-INF/classes/static') {
        from "${project(':ui').projectDir}/dist"
    }

    launchScript {
        properties 'inlinedConfScript': 'startScript'
    }
}

Однако я не могу передать переменную окружения в приложение vue.Каждая попытка заканчивается process.env.API_IP, являющимся undefined.process.env всегда состоит только из BASE_URL и NODE_ENV.

пробовал:

  1. export API_IP=*ip* и затем запускает приложение весенней загрузки.
  2. установить переменную в /etc/environment, выйти из системы, войти в систему, запустить приложение весенней загрузки
  3. передать его в качестве аргумента запуска -DAPI_IP=*api*
  4. установить JAVA_OPTS=-DAPI_IP=*api*

в соответствии с https://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html:

создать файл для inlinedConfScript, содержащий API_IP=*api* и JAVA_OPTS=-DAPI_IP=*api* или только по одному для каждого. создать .conf файл в том же каталоге с файлом .jar с теми же параметрами значений, что ив #5.

Пожалуйста, помогите:)

1 Ответ

0 голосов
/ 03 марта 2019

Частичным решением было удаление ip / domain из запросов vuejs в качестве комментария @ tianzhipeng.Однако в этом случае я могу запустить сервер только на порту 8080.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...