使用 docker-compose 的 ECS 中的 ecs-searchdomain-sidecar 问题
Issue with ecs-searchdomain-sidecar in ECS with docker-compose
部署后,我转到我的集群,我看到了我的服务,并在我的服务中看到了任务。
当我点击任务时,我有 2 个容器:
- 我的应用程序
- App_ResolvConf_InitContainer
我的应用程序 运行 并且按预期工作,但是 App_ResolvConf_InitContainer 显示为已停止。
当我展开它以查看更多信息时,它显示:
图像:docker/ecs-searchdomain-sidecar:1.0
详细信息:
退出代码 0
命令 ["us-east-1.compute.internal","my-app.local"]
当我去 CloudWatch 检查日志时,这个流中没有日志。
上下文:
我的集群位于私有子网中。
我在 public 子网中创建了 NAT 网关并更新了路由 table.
拉取图片似乎没有问题。
如果我将 redis 添加到我的撰写文件中,它会拉取并创建容器
redis:
image: "redis:alpine"
这是我的撰写文件:
version: "3.9"
services:
web:
image: my-private-repo/web
ports: ["80:80"]
当我搜索 docker/ecs-searchdomain-sidecar:1.0 时,我找不到相关信息。此外,它不提供任何错误。刚刚停止。
我在 docker 撰写或 docker 撰写转换期间没有收到任何警告。
TL/DR 版本是您不必担心的,它按预期工作。你可以忽略那个sidecar。
较长的版本是,由于 ECS 服务的工作方式,在某些情况下(取决于您的主应用程序容器所基于的 Linux 映像)如果没有完全限定的名称,则无法解析普通服务名称域名(例如 web.local
)。该 sidecar 在本地解析器级别做了一个技巧,使 web
能够在这些情况下得到解析。你看到的是 sidecar 做出这个把戏然后退出。它按预期工作。
部署后,我转到我的集群,我看到了我的服务,并在我的服务中看到了任务。 当我点击任务时,我有 2 个容器:
- 我的应用程序
- App_ResolvConf_InitContainer
我的应用程序 运行 并且按预期工作,但是 App_ResolvConf_InitContainer 显示为已停止。 当我展开它以查看更多信息时,它显示:
图像:docker/ecs-searchdomain-sidecar:1.0
详细信息: 退出代码 0 命令 ["us-east-1.compute.internal","my-app.local"]
当我去 CloudWatch 检查日志时,这个流中没有日志。
上下文: 我的集群位于私有子网中。 我在 public 子网中创建了 NAT 网关并更新了路由 table.
拉取图片似乎没有问题。 如果我将 redis 添加到我的撰写文件中,它会拉取并创建容器
redis:
image: "redis:alpine"
这是我的撰写文件:
version: "3.9"
services:
web:
image: my-private-repo/web
ports: ["80:80"]
当我搜索 docker/ecs-searchdomain-sidecar:1.0 时,我找不到相关信息。此外,它不提供任何错误。刚刚停止。
我在 docker 撰写或 docker 撰写转换期间没有收到任何警告。
TL/DR 版本是您不必担心的,它按预期工作。你可以忽略那个sidecar。
较长的版本是,由于 ECS 服务的工作方式,在某些情况下(取决于您的主应用程序容器所基于的 Linux 映像)如果没有完全限定的名称,则无法解析普通服务名称域名(例如 web.local
)。该 sidecar 在本地解析器级别做了一个技巧,使 web
能够在这些情况下得到解析。你看到的是 sidecar 做出这个把戏然后退出。它按预期工作。