В Quarkus, популярной платформе Java для создания микросервисов, вам может потребоваться изменить порт по умолчанию, на котором запускается ваше приложение. Это может быть полезно по разным причинам, например для предотвращения конфликтов портов или для соответствия конкретным требованиям развертывания. В этой статье мы рассмотрим несколько способов изменения порта в Quarkus, а также приведем примеры кода.
Методы изменения порта в Quarkus:
-
Свойства приложения:
Quarkus позволяет настраивать различные свойства в файле application.properties. Чтобы изменить порт, откройте файлsrc/main/resources/application.propertiesи добавьте следующую строку:quarkus.http.port=8081Замените
8081на нужный номер порта. После перезапуска приложения Quarkus будет использовать указанный порт. -
Переменная среды:
Вы также можете изменить порт с помощью переменной среды. Задайте для переменнойQUARKUS_HTTP_PORTнужный номер порта либо через командную строку, либо в конфигурации развертывания. Quarkus автоматически прочитает эту переменную и будет использовать указанный порт. -
Файл конфигурации:
Quarkus поддерживает файлы конфигурации в различных форматах, таких как YAML или JSON. Создайте файлconfig.yamlв папкеsrc/main/resourcesquarkus: http: port: 8082.
Замените
8082на нужный номер порта. Quarkus подберет эту конфигурацию и запустит приложение на указанном порту. -
Системное свойство:
Вы можете передать системное свойство Quarkus во время запуска, чтобы изменить порт. Например, при запуске приложения с использованием Maven используйте следующую команду:mvn quarkus:dev -Dquarkus.http.port=8083Замените
8083на нужный номер порта. Quarkus запустит приложение на указанном порту. -
Программно:
В некоторых случаях может потребоваться изменить порт программно. Quarkus предоставляет классQuarkusHttpConfiguration, который вы можете внедрить в свой код. Вот пример того, как изменить порт программно:import io.quarkus.runtime.annotations.QuarkusMain; import io.quarkus.runtime.Quarkus; import io.quarkus.runtime.QuarkusApplication; import io.quarkus.runtime.QuarkusApplicationExitException; import io.quarkus.runtime.configuration.QuarkusConfigFactory; import io.quarkus.runtime.configuration.QuarkusConfig; import javax.inject.Inject; import javax.inject.Singleton; @Singleton @QuarkusMain public class Main implements QuarkusApplication { @Inject QuarkusConfig quarkusConfig; public static void main(String... args) { Quarkus.run(Main.class, args); } @Override public int run(String... args) throws Exception { int newPort = 8084; // Replace with your desired port number quarkusConfig.write("quarkus.http.port", String.valueOf(newPort)); Quarkus.asyncExit(); throw new QuarkusApplicationExitException(); } }Замените
8084на нужный номер порта. Когда вы запустите этот код, Quarkus запустит приложение на указанном порту.
В этой статье мы рассмотрели несколько способов изменения порта в Quarkus. Вы можете выбрать метод, который лучше всего соответствует вашим требованиям, будь то изменение файлов конфигурации, использование переменных среды или программное изменение порта. Следуя этим примерам, вы сможете легко настроить Quarkus для работы на специальном порту и обеспечить плавное развертывание ваших микросервисов.