Amazon web services 将Docker从Travis部署到AWS(或任何其他支持SSH的服务器)

Amazon web services 将Docker从Travis部署到AWS(或任何其他支持SSH的服务器),amazon-web-services,docker,travis-ci,Amazon Web Services,Docker,Travis Ci,我的部署过程缺少一个重要部分。将代码向上推送到服务器 我正在绞尽脑汁决定是否: 1-在Travis上创建/构建Docker图像,然后以某种方式将其推送到AWS 或 2-尝试ssh(从travis脚本)到我的AWS,并在那里运行命令集,包括Docker映像构建和初始化 我肯定有疑问,我认为上述两种解决方案都存在问题。这里通常的机制是什么?我会在这里回答自己: 1不是一个好主意,它绝对是错误的。如果您在Travis端构建Docker容器,并(认为您可以)将其传输到AWS,那么您将过度占用网络,部署可

我的部署过程缺少一个重要部分。将代码向上推送到服务器

我正在绞尽脑汁决定是否:

1-在Travis上创建/构建Docker图像,然后以某种方式将其推送到AWS

2-尝试ssh(从travis脚本)到我的AWS,并在那里运行命令集,包括Docker映像构建和初始化


我肯定有疑问,我认为上述两种解决方案都存在问题。这里通常的机制是什么?

我会在这里回答自己:

1不是一个好主意,它绝对是错误的。如果您在Travis端构建Docker容器,并(认为您可以)将其传输到AWS,那么您将过度占用网络,部署可能需要很长时间

2或多或少是要遵循的方法(可能还有其他方法)。在我的例子中,我用ssh将travis连接到我的服务器,并远程执行一组命令,其中包括docker build、docker run


值得一提的是,无论您在服务器中远程执行什么命令,输出都会完美地传输到Travis输出中。

请根据实际问题重新表述。正如你提到的,有很多细微差别,所以没有“通常的机制”。请看下面我的答案。我更像是试图找到“正确”的方法。我希望这次我更清楚了。