gpt4 book ai didi

amazon-web-services - 从 gitlab.com CI 管道在 aws EFS 上部署文件

转载 作者:行者123 更新时间:2023-12-04 13:02:36 26 4
gpt4 key购买 nike

从 Gitlab CI 管道在 aws EFS 中部署文件的最佳实践是什么?

目前,我们通过 ssh 将文件从 gitlab.com 部署到 EFS 到挂载 EFS 的 EC2 实例之一。有没有更好的方法来做到这一点?不太喜欢让 ssh 访问 gitlab 到我们的 EC2 实例

最佳答案

如果您希望文件最终出现在 EFS 上,那么在一天结束时,您必须从某个安装了 EFS 卷的系统将它们写入那里。除了写入它提供的 nfs 挂载卷之外,没有其他方法可以写入 EFS。 (EFS 提供 FileSync 服务,AFAICT 仅包含创建 EC2 实例并将数据通过它移动到 EFS 的过程,但这看起来更适合迁移而不是正在进行的文件操作)。

这并不一定意味着您必须允许 gitlab ssh 进入。您可以让 gitlab 在某处暂存文件并通知系统。或者您可以让系统轮询更改。但是这些似乎都不像您的实现那么简单。

另一种选择是限制 ssh 用户可以执行的操作。这需要一些调查才能准确确定 gitlab 文件复制过程的运作方式。如果它只使用 SFTP 或 SCP,您应该能够将用户限制在此范围内,并且用户文件系统权限可以防止用户写入不适当的位置。

一般来说,我现在没有看到很多 devops 构建流程将代码复制到共享文件系统。 NFS 是共享文件的有效解决方案,但有其自身的缺陷。相反,部署过程通常会构建某种包,然后使用部署 Hook (“持续交付”风格)自动部署包,或者手动更新部署自动化以升级版本。通常将两者结合起来为开发环境提供持续交付过程,并为生产提供手动版本设置。

关于amazon-web-services - 从 gitlab.com CI 管道在 aws EFS 上部署文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52085227/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com