我有一个简单的SpringBoot应用程序,带有AngularJSWeb客户端和PostgreSQL数据库此时,我可以通过Maven为我的应用程序创建JAR或WAR。我还有一个有效的Postgres数据转储。
有人能给我一些路线图,我如何能成功地托管我的应用程序和数据杰瑞斯?
最佳答案
首先,我的塑料供应商有很大的支持,所以他们帮助了很多。
第一部分是部署应用程序(或者您可以从复制Postgres数据开始)。这将为您提供必要的信息,以便在部署应用程序之前更正application.properties)
支持建议使用他们的Maven插件进行构建。
链接:maven-plugin-jelastic
您应该配置应用程序类,以便创建可部署的war。
链接:howto-create-a-deployable-war-file
请注意,您必须禁用Spring Boot的嵌入式Tomcat。
spring boot starter web依赖项启动embedded 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>
然后通过以下方式部署应用程序:
mvn jelast:部署
如果你像我一样有角度web客户机,那么你可能需要更正访问服务器的基本URL。您没有端口,因此如果在jelast上创建环境时设置了上下文名称,则应该添加该名称。
例如,如果在jelast中将上下文命名为“loc”,那么baseURL将是:
angular.module('localizeApp')
.constant("baseURL", "/loc/")
.service('LocalizeData', ['$http', 'baseURL', function ($http, baseURL) {
this.getConfig = function () {
return $http.get(baseURL + "config");
};
部署的第二部分是复制jelast上的Postgres本地转储。很简单。
使用pgAdmin转储Postgres数据库。
使用jelast在那里创建环境时提供给您的信息转到jelast Postgres web控制台。
使用正确的名称创建新数据库。使用密码创建用户。
如果转储不是很大,请转到web控制台中的SQL部分并选择上载文件。选择转储文件。执行它。这就是全部。
如果您有一个大数据库,那么您可以通过SCP上传转储文件(参见ssh连接)并通过命令行导入。例如,支持建议使用WinSCP。
然后应更正application.properties:
spring.datasource.url=jdbc:postgresql://your_jelastic_postgres_url/your_database
同时设置正确的用户和密码。