[英]AWS CodeDeploy jar
我想使用 AWS CodeDeploy 部署一個 jar 文件,然后在 EC2 上運行我的java -jar
命令。 但我注意到 AWS CodeDeploy 只從 S3 中提取zip
、 tar
和 tar.gz`。 我想我將使用本地 jenkins 中的 CLI 將 .zip 文件(包含 jar)推送到 S3,然后運行另一個 CLI 命令來啟動 AWS CodeDeploy,它將從 S3 中提取 .zip。
但是,我對 AWS CodeDeploy 的詳細信息有疑問:
我可以使用 appspec.yml 發出兩個命令,
1) 一旦它在 EC2 上,從 S3 解壓縮 .zip
2) 在特定位置發出java -jar
?
謝謝
1)您不需要發出解壓縮命令,appspec.yml 中的 files 部分用於指定您希望復制到 ec2(目標)上的文件系統的存檔(源)中的文件,並將由代碼完成部署代理 RE https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file-structure-files.html
2) 創建一個運行腳本,在鈎子 ApplicaitonStart RE https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file-structure-hooks.html下發出 java -jar 命令
基於 os linux 的示例 appspec.yml:
version: 0.0
os: linux
files:
- source: ./
destination: /home/ubuntu/myapp
hooks:
ApplicationStart:
- location: runapp.sh
runas: ubuntu
運行app.sh:
#!/usr/bin/env bash
echo 'Starting my app'
cd '/home/ubuntu/myapp'
java -jar myapp.jar
在此示例中,您將在部署包中包含 runapp.sh
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.