我想要自动部署我们的网站到 AWS S3 上。我已经编写了一个 node 脚本来自动构建和上传网站,但是我希望每当我们的仓库的 master
分支在 GitHub 上更新时,脚本可以自动运行。
我调查了 AWS CodeDeploy,但是它似乎只用于特定地部署到 EC2 上。我还看了看 AWS Lambda,但是似乎没有明确的方法使用 git
来拉取仓库副本以便运行脚本。
有没有任何服务(最好与 AWS 相关)可以使用?
我想要自动部署我们的网站到 AWS S3 上。我已经编写了一个 node 脚本来自动构建和上传网站,但是我希望每当我们的仓库的 master
分支在 GitHub 上更新时,脚本可以自动运行。
我调查了 AWS CodeDeploy,但是它似乎只用于特定地部署到 EC2 上。我还看了看 AWS Lambda,但是似乎没有明确的方法使用 git
来拉取仓库副本以便运行脚本。
有没有任何服务(最好与 AWS 相关)可以使用?
AWS Lambda
并在 push
后将存储库的特定分支部署到 S3
。您可以充分利用 GitHub 部署密钥,该密钥与个人访问令牌相比权限更少,并且可以为每个存储库进行配置。我知道这不是git部署... 但是,我没有设置CI服务器,而是使用了s3cmd。
执行此命令将我的构建目录与S3同步。
s3cmd sync -r ~/code/mysite/build s3://www.mysite.com --delete-removed
cd /path/to/public/directory && aws s3 sync --acl public-read --delete . s3://your.bucket.name
aws s3 sync --acl public-read --delete . s3://MY-BUCKET-NAME-HERE
。我之前在S3中创建了一个新的Bucket,我的数据被放置在那里。 - Ruben