gpt4 book ai didi

amazon-web-services - SSM 中未选择 ECS 上的 EC2

转载 作者:行者123 更新时间:2023-12-03 07:32:05 25 4
gpt4 key购买 nike

我想在 ecs 任务 (ec2) 上执行 django 命令 ($python manage.py foo)。我不想使用 ssh 因为生产服务器。我想使用 AWS Systems Manager Run Command 或 session 管理器。

我以下面的页面为例,在 Dockerfile 中添加了安装命令。( https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-managed-linux.html )

我的 docker 镜像是 debian,因为它是 python 3.6 镜像

但是,当我用cfn检查ssm配置方法时,因为需要激活码,没有激活的项目。(https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_SSM.html)

我以为我会手动创建一个管理器并生成激活码,但30分钟后我发现代码的默认设置就过期了。在这种情况下,每次执行 docker build 时都必须生成激活码。

我正在尝试以这种方式设计一个操作。

  1. 除了 SSM 和 ssh 之外,我可以在 ecs 任务(您的 docker 镜像)上执行 shell 命令吗?

  2. 用cfn生成ssm,可以用Ref等获取激活码吗?

  3. 有没有办法让激活码有效期无限期或不再需要?

  4. 我可以将我的 docker 镜像创建的 ecs 的 ec2 实例显示在管理器上吗?谢谢

最佳答案

您可以查看 aws 系统管理器 - session 管理器。您可以通过 Web 控制台或 cli 连接到任何实例,而无需在实例上打开任何端口。访问由 IAM 控制。 https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html

如果您想直接连接到 Docker 容器,您可以利用 session 管理器的本地解决方案。 https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html

如果您想通过 ssh 连接到 ec2 实例,您也可以使用 session 管理器来完成此操作,而无需打开 ssh(22) 端口。 https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started-enable-ssh-connections.html

我还创建了一个简洁的 SSH ProxyCommand 脚本,该脚本在与目标实例建立连接期间临时将您的公共(public) ssh key 添加到目标实例。

AWS SSM SSH ProxyComand -> https://gist.github.com/qoomon/fcf2c85194c55aee34b78ddcaa9e83a1

关于amazon-web-services - SSM 中未选择 ECS 上的 EC2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56191305/

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