问题标签 [amazon-ecs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1247 浏览

amazon-web-services - AWS ECS 容器链接:MySQL 连接被拒绝

我正在尝试使用这个简单的示例链接 Amazon ECS(容器服务)中的两个容器:http: //docs.aws.amazon.com/AmazonECS/latest/developerguide/example_task_definitions.html

无论出于何种原因,WordPress 容器无法访问 MySQL 数据库,并且从 WordPress 容器的日志中我看到以下内容:

Warning: mysqli::mysqli(): (HY000/2002): Connection refused in - on line 10

DockerHub上说 WordPress 容器会自动从链接的容器中获取 Root PW 和 HOST IP,所以我为什么会遇到这个问题。

我的 JSON 配置如下所示:

0 投票
1 回答
3893 浏览

amazon-web-services - 如何使用参数在 ECS 上运行 nginx 反向代理容器

我在这里有一个稍微修改过的容器版本:

http://jasonwilder.com/blog/2014/03/25/automated-nginx-reverse-proxy-for-docker/

要在本地运行它,我使用:

并运行我的其他容器,如下所示:

我无法将其转换为 ECS 上的任务定义。

任务定义

我有两个容器:

nginx-反向代理

  • 端口映射:主机 80 容器 80
  • 基本:真实
  • 命令:/app/docker-entrypoint.sh

静态站点

  • 端口映射:主机 5000 容器 5000
  • 基本:假
  • 命令:/some-file.sh
  • 环境变量:VIRTUAL_HOST static.example.com

我有一个带有一个 ECS 实例的集群和一个带有一个任务的服务器,如上所述。这会不断循环并失败,并显示“已停止(任务中的基本容器已退出)”。

现在我假设我需要设置卷,但是我能找到的所有示例都有一个路径和一个名称,我看不出如何将这个“/var/run/docker.sock:/tmp/docker.sock”转换为任何可用的字段。

0 投票
10 回答
85040 浏览

amazon-web-services - 运行任务时出现 AWS ECS 错误:在您的集群中未找到任何容器实例

我试图将docker容器映像部署到AWSusing ECS,但没有创建 EC2 实例。我已经在互联网上搜寻了有关我收到以下错误的原因的解释:

“调用 RunTask 操作时发生客户端错误 (InvalidParameterException):在您的集群中未找到任何容器实例。”

这是我的步骤:

1. 将 Docker 映像从 Ubuntu 推送到我的 Amazon ECS 存储库。

2.注册ECS任务定义:

3.运行任务:

然而,它失败了。

这是我的任务:

我也尝试使用管理控制台来配置集群和服务,但我得到了同样的错误。如何将集群配置为拥有 ec2 实例,需要使用哪种容器实例?我认为这整个过程是从创建 EC2 实例开始的!!

0 投票
1 回答
91 浏览

jenkins - 将cloudbees ec2 docker镜像与docker中的docker结合

我正在尝试将 docker 功能中的 docker 与cloudbees ecs图像中的 docker 结合起来。这两个图像都是使用不同的基于 linux 的发行版构建的。Cloudbees ECS 从映像是使用基础 ubuntu 14.04构建的, docker:1.8-dind是从基础 debian:jessie 构建的。使用 debian:jessie 作为基础,将两者结合到一个具有这两个功能的 docker 映像中的最佳方法是什么。

0 投票
0 回答
814 浏览

amazon-web-services - AWS Beanstalk 中 docker 容器之间的交叉通信

有没有办法在AWS Beanstalk上的 docker 容器之间进行双向通信?

我试图开始工作的堆栈非常标准:Varnish -> Nginx -> PHP-FPM

我正在使用链接规范来指定 nginx 应该找到主机名“php-app”。Nginx 找到php-app 主机名,这样就可以了。但是,我还需要“php-app”能够解析主机名“varnish”,以便“php-app”可以发送 PURGE 请求以使缓存失效。

基本上现在只有这种通信有效:

[清漆:80] -> [nginx:8080] -> [php-app]

但是,这应该有效:

[清漆:80] -> [nginx:8080] -> [php-app] ---PURGE---> [清漆:80]

php-app 基本上只需要知道 varnish 主机的 IP,但这似乎是不可能的。

我知道我也可以从主机获取清漆容器 ip,但我想从 php-app 容器中做同样的事情:

我也尝试添加到 php-app 容器的链接,但是在部署时导致错误,我猜这是因为存在循环依赖:

我的相关Dockerrun.aws.json(容器定义文件)如下所示:

0 投票
3 回答
2700 浏览

amazon-web-services - AWS ECS 运行需要多个内核的任务

我在概念上试图了解如何使用AWS ECS来运行我的“集群”作业。

我在 Docker 容器中有一些科学软件,它本机利用底层实例必须提供的尽可能多的内核。

在这种情况下,我的问题是,我可以使用 AWS ECS 来“增加”在 Docker 容器中运行的任务的“可见”核心数量吗?例如,我的“集群”是否仅限于单个实例?还是一个“集群”可以扩展到多个实例?

通过他的 AWS 文档,我无法找到任何答案。

0 投票
1 回答
93 浏览

restcomm - Amazon ECS 中的 Restcomm

我正在尝试使用 Amazon ECS 中的 docker 映像运行 Restcomm,但我发现了一些问题。

这是我正在运行的命令:

docker run -e ENVCONFURL="https://raw.githubusercontent.com/RestComm/Restcomm-Docker/master/scripts/restcomm_env_basicAmazon.sh"

-p 80:80 -p 443:443 -p 9990:9990 -p 5060:5060 -p 5061:5061 -p 5062:5062 -p 5063:5063 -p 5060:5060/udp -p 65000-65050:65000- 65050/udp restcomm/restcomm:最新

我可以访问管理门户、奥林巴斯和 RVD,但是当我拨打 +1234 或接到 Nexmo 的电话时,它失败了,这里是日志:https ://gist.github.com/antonmry/61ec970be3ff9fd923538899768bbc76

我猜这个问题与运行 restcomm_env_basicAmazon.sh 有关,但不确定。你如何在亚马逊上运行它?一些帮助将受到欢迎。

此致,

安东

0 投票
1 回答
1647 浏览

amazon-ec2 - Amazon ECS 主机目录访问

我有一个使用 docker 在本地运行的解决方案,我正在尝试使用 ECS 在 AWS 上部署该解决方案。在本地,我有一个 nginx 容器,我通过使用 docker-compose.yml 中的卷向它提供 conf 文件:

在 ./nginx 目录中,我有两个(特定于站点的).conf 文件,它们为几个站点提供配置。它工作得很好。但是当我尝试使用 ECS 任务定义 UI 时,卷区域似乎不允许以任何方式使 EC2 主机上的目录对容器可用。在“挂载点”区域中,源下拉列表始终为空,当我在容器路径字段中键入“/nginx:/etc/nginx/conf.d”之类的内容时,什么都没有保存。

任何想法如何从 ECS 中的容器访问 EC2 目录?谢谢你的帮助...

0 投票
4 回答
1959 浏览

javascript - 使用 AWS SDK for Node.js,如何等待 EC2 实例被添加到 ECS 集群?

我最近开始使用 AWS,并阅读了它的文档。

根据我的需要,我必须从我的 node.js 代码部署 EC2 实例,等待它们被添加到我的 ECS 集群(通过使用正确的 Arn 实例配置文件),然后在最后一个启动的 EC2 实例上启动一个任务。

但是,实际上,我没有找到在 EC2 启动时定义任务的方法,因为我必须用我的 nodejs 中的变量覆盖 docker 命令并执行一些其他任务。因此,我必须等待 EC2 添加到 ECS 集群,然后再尝试使用我的参数和来自容器实例 Id 的 Arn 启动任务(但我无法从 listContainerInstances() 中获取它)。

有没有办法轻松实现这一目标?(实际上我尝试使用 setTimeout 循环,直到 listContainerInstances() 返回新的东西,但我认为这根本不是一个好习惯,而且我的代码看起来有点难看)。

0 投票
2 回答
2275 浏览

amazon-web-services - 将实例注册到 AWS ECS 集群

我在 AWS 上创建了一个 EC2 实例以用作 ECS 实例。我按照这里的这些步骤来做到这一点。

我还在 ECS 下创建了一个新集群,但由于某些原因,我看不到集群下的实例:

在此处输入图像描述

关于这里可能是什么问题的任何想法?