gpt4 book ai didi

java - 如何在云 Jelastic 上使用 PostgreSQL 部署 Spring Boot 应用程序?

转载 作者:行者123 更新时间:2023-11-29 14:09:49 25 4
gpt4 key购买 nike

我有一个带有 Angular JS 网络客户端和 PostgreSQL 数据库的简单 Spring Boot 应用程序。此时我可以通过 Maven 为我的应用程序创建 JAR 或 WAR。我还有一个有效的 Postgres 数据转储。

有人可以给我一些路线图,告诉我如何在 Jelastic 上成功托管我的应用程序和数据吗?

最佳答案

首先,我的 Jelastic 提供商提供了强大的支持,所以他们提供了很多帮助。

第一部分是部署应用程序(或者您可以从复制 Postgres 数据开始。这会为您提供必要的信息,以便您可以在部署应用程序之前更正您的 application.properties)

  1. 支持人员建议使用他们的 Maven 插件进行构建。链接:maven-plugin-jelastic
  2. 您应该配置应用程序类,以便您可以创建可部署的 war 。链接:howto-create-a-deployable-war-file
  3. 请注意,您必须禁用 Spring Boot 的嵌入式 Tomcat。spring-boot-starter-web 依赖项启动嵌入式 Tomcat,因此您可以通过以下方式禁用它:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
  1. 然后通过以下方式部署您的应用:

mvn jelastic:deploy

  1. 如果您像我一样拥有 Angular 网络客户端,那么您可能需要更正访问服务器所用的基本 URL。您没有端口,因此如果您在 Jelastic 上创建环境期间设置了上下文名称,则应添加它。

例如,如果您将 Jelastic 中的上下文命名为“loc”,那么 baseURL 将为:

angular.module('localizeApp')
.constant("baseURL", "/loc/")

.service('LocalizeData', ['$http', 'baseURL', function ($http, baseURL) {

this.getConfig = function () {
return $http.get(baseURL + "config");
};

部署的第二部分是将您的 Postgres 本地转储复制到 Jelastic 上。这很简单。

  1. 使用 pgAdmin 转储您的 Postgres 数据库。
  2. 使用 Jelastic 在您创建环境时提供给您的信息转到 Jelastic Postgres 网络控制台。
  3. 使用适当的名称创建新数据库。使用密码创建用户。
  4. 如果您的转储不是很大,请转到 Web 控制台中的 SQL 部分并选择上传文件。选择您的转储文件。执行它。就这样。
  5. 如果您有一个大数据库,那么您可以通过 SCP(参见 ssh 连接)上传转储文件并通过命令行导入。例如,支持推荐了 WinSCP。

那么你应该更正application.properties:

spring.datasource.url=jdbc:postgresql://your_jelastic_postgres_url/your_database

同时设置正确的用户和密码。

关于java - 如何在云 Jelastic 上使用 PostgreSQL 部署 Spring Boot 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43328762/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com