javascript
在Amazon Elastic Beanstalk上部署Spring Boot应用程序
在此博客中,我們將看到如何在Amazon ElasticBeanstalk上部署Spring Boot應(yīng)用程序。
Amazon ElasticBeanstalk具有一個預(yù)配置的Java環(huán)境,可用于部署內(nèi)部裝有servlet容器的Spring Boot JAR。
對于我們的示例,此處將使用maven作為構(gòu)建工具。
步驟1:第一步是將應(yīng)用程序打包為要部署的JAR。
–在pom中,我們必須確保將“ packaging”屬性設(shè)置為“ jar”
–現(xiàn)在,運行maven命令以打包應(yīng)用程序并生成一個JAR。
Anirudhs-MacBook-Pro:~ anirudh$ mvn clean package這會將JAR打包到目標(biāo)文件夾中,如下所示:
practice-1.0-SNAPSHOT現(xiàn)在,我們需要在ElasticBeanstalk中創(chuàng)建一個環(huán)境。
第2步:
登錄您的AWS賬戶并轉(zhuǎn)到Elastic Beanstalk。 創(chuàng)建一個新環(huán)境,為您的應(yīng)用程序命名,選擇適當(dāng)?shù)膶嵗愋汀?如果您只是對此進行測試,請確保選擇“ t2.micro”實例,因為它位于“免費套餐”下。
創(chuàng)建Java環(huán)境后,需要將創(chuàng)建的“ JAR”上載到Elastic Beanstalk,如果使用Web Interface,則可以直接選擇文件并上載,否則,如果使用CLI,則可以使用以下命令將其推送到ElasticBeanstalk:它的CLI模塊。 上傳后,將需要幾分鐘來部署您的應(yīng)用程序。
該應(yīng)用程序現(xiàn)在使用Nginx反向代理,默認(rèn)情況下會與端口5000通訊,因此現(xiàn)在將不可用。因此,如果您嘗試立即運行該應(yīng)用程序,則會收到502錯誤。 要解決此問題,您需要定義屬性“ PORT”
步驟3:定義“端口”
為了使應(yīng)用程序正常運行,您需要添加一個名稱為“ PORT”的標(biāo)簽,并在大多數(shù)情況下設(shè)置值,如果使用所有默認(rèn)值,則應(yīng)為8080。
步驟4:打開端口8080
現(xiàn)在,我們需要打開端口8080,以輸入EC2實例的入站流量。 轉(zhuǎn)到EC2實例并找到用于該實例的安全組。 編輯安全組,添加入站規(guī)則,然后添加以下規(guī)則:
現(xiàn)在,您的端口8080已打開,可以接受入站連接。 現(xiàn)在,如果您單擊應(yīng)用程序的鏈接,則應(yīng)該可以訪問您的應(yīng)用程序,如果不嘗試將端口8080添加到URL中(如果您未使用ELB)
可選步驟5:添加數(shù)據(jù)庫
如果您的應(yīng)用程序正在使用數(shù)據(jù)庫,則將RDS實例添加到ElasticBeanstalk應(yīng)用程序中并啟動它。
記下訪問URL,用戶名,密碼等。
轉(zhuǎn)到application.properties文件,并輸入所有這四個參數(shù):(此示例使用MySQL)
spring.datasource.url = jdbc:mysql://aaxxxxxxj.xxxxxxxmcn.ap-south-1.rds.amazonaws.com:3306/practice spring.datasource.username = xxxxx spring.datasource.password = xxxxxx spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect現(xiàn)在,如果您已將“ spring.jpa.hibernate.ddl-auto”設(shè)置為創(chuàng)建/更新,請再次打包您的JAR并上傳。 只要已經(jīng)建立了架構(gòu),就可以創(chuàng)建數(shù)據(jù)庫表。 您可以使用schema.sql在Spring Boot中創(chuàng)建架構(gòu)。
希望這有助于將Spring Boot應(yīng)用程序部署到Amazon Elastic bean stalk。
翻譯自: https://www.javacodegeeks.com/2016/08/deploy-spring-boot-application-amazon-elastic-beanstalk.html
總結(jié)
以上是生活随笔為你收集整理的在Amazon Elastic Beanstalk上部署Spring Boot应用程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果 iOS 17 拍照引入“HEIF
- 下一篇: gradle idea java ssm