AWS CodeDeploy:修订间差异

来自Gea-Suan Lin's Wiki
跳到导航 跳到搜索
此页面具有访问限制。如果您看见此消息,则说明您没有权限访问此页面。
第32行: 第32行:
=== 外部機器 ===
=== 外部機器 ===
 當機器不在[[EC2]]上時,需要用<code>register-on-premises-instance</code>將機器註冊到CodeDeploy上後才能使用。
 當機器不在[[EC2]]上時,需要用<code>register-on-premises-instance</code>將機器註冊到CodeDeploy上後才能使用。
== 參考資料 ==
{{Reflist|2}}


== 外部連結 ==
== 外部連結 ==

2018年5月1日 (二) 19:20的版本

AWS CodeDeployAWS提供的服务之一,用于发布服务器端的软件。

简介

安装

在服务器端需要安装Agent,这只Agent会负责取得档案并且执行设定的步骤[1]

设定

软件本身有两段设定,一段是Deploy的发起端透过awscli呼叫,另外一段是在appspec.yml定义在服务器上的行为。

发起端

通常会有两个指令:

  • 将现在的目录打包起来传到S3上。可能会使用--ignore-hidden-files避免.git或是.svn被包进去,但这个方式会使得.htaccess不会被包进去,对于使用Apache的使用者来说要注意。
  • 要求CodeDeploy送指令到各机器上抓档案。
$ aws deploy push --application-name "${APPLICATIO_NAME}" --region us-east-1 --s3-location s3://${S3_BUCKET}/${GIT_BRANCH}-${GIT_HASH}
$ aws deploy create-deployment --application-name "${APPLICATION_NAME}" --deployment-group-name "${DEPLOYMENT_GROUP_NAME}" --region us-east-1 --s3-location bucket="${S3_BUCKET},key=${GIT_BRANCH}-${GIT_HASH},bundleType=zip"

服务器端

appspec.xml内最简单的设定就是指定要将这包档案解到哪边:

version: 0.0
os: linux
files:
  - source: /
    destination: /srv/www.example.com

外部机器

当机器不在EC2上时,需要用register-on-premises-instance将机器注册到CodeDeploy上后才能使用。

参考资料

外部链接