繁体   English   中英

TeamCity 代理 - AWS CLI

[英]TeamCity Agent - AWS CLI

我已经使用 JetBrains 堆栈模板( https://www.jetbrains.com/help/teamcity/running-teamcity-stack-in-aws.html )将 TeamCity 服务器和代理部署到 AWS

一切似乎都很好,我的服务器启动,代理功能正常,我创建了几个构建,等等。我到了一个点,我想使用 aws-cli 命令将我的应用程序部署到 AWS 环境。

我正在努力将 aws-cli 启用/安装到代理中。 我的构建步骤因aws: command not found出错有人有任何想法吗? 到目前为止我的进展:我已经通过 ssh 堡垒 ec2 连接到代理 EC2 机器,并且我能够以 ec2-user 的身份调用aws --version ,但构建代理看不到 aws。

我使用远程桌面连接在团队城市代理中添加了 aws-cli,因为我使用了团队城市的 window 代理。 在构建步骤中,我使用 Runner Type 作为命令行并执行 aws 命令。

有关更多信息,您可以参考下面我回答问题的链接: 如何在成功的 Teamcity 构建中部署到 AWS Elastic Beanstalk

原来,我的 TeamCity 代理通过 docker 图像https://hub.docker.com/r/jetbrains/teamcity-agent在 AWS ECS 中运行

我最终做的是通过使用 jetbrains one 作为基础来创建我自己的 docker 图像。

我将我的 docker 图像上传到 AWS ECS 存储库。 之后,我为原始任务定义创建了一个新版本。 这个新版本使用我的图像而不是原始图像,因此我在那里有 aws-cli。

然后我将我的 AWS 配置文件添加到 EC2 主机并将卷添加到 docker 容器(通过任务定义),以便容器能够访问.aws/credentials 文件。

Dockerfile 看起来像这样:

FROM jetbrains/teamcity-agent

RUN apt-get update && apt-get install -y python-pip
RUN pip install awscli --upgrade --user
ENV PATH="~/.local/bin:${PATH}"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM