我尝试在AWS Fargate上设置一个小例子,并尝试在那里有一个带有一个数据库容器的应用程序容器.
任务定义启动两个容器,但我的app容器失败了getaddrinfo ENOTFOUND db db:3306.因此,我的应用程序容器找不到数据库容器.
由于Fargate不允许Docker容器的"链接",我想知道他们如何相互通信.数据库容器的名称db带有端口3306,我的app容器配置为使用它.
不幸的是,定义容器的链接不适用于Fargate,但仅适用于"oldschool"ECS/EC2.
在本地的docker-compose设置中,它以这种方式工作.
我尝试关闭/启动我的弹性beanstalk(测试)环境过夜,以便在不需要服务器时节省资源.在EB的Web控制台上,我可以输入触发的基于时间的缩放.
但是,当我在.ebextensions文件夹中添加一个应该执行相同操作的配置文件时,服务器根本不会扩展.
根据Elastic Beanstalk 的文档(搜索" 基于时间的扩展选项设置文件的示例 "),可以添加带有基于时间的缩放配置的.ebextension文件.
所以我调整了示例并将相应的定义添加到项目中:
{
[
{
"Namespace": "aws:autoscaling:scheduledaction",
"ResourceName": "OvernightShutdown",
"OptionName": "MinSize",
"Value": "0"
},
{
"Namespace": "aws:autoscaling:scheduledaction",
"ResourceName": "OvernightShutdown",
"OptionName": "MaxSize",
"Value": "0"
},
{
"Namespace": "aws:autoscaling:scheduledaction",
"ResourceName": "OvernightShutdown",
"OptionName": "DesiredCapacity",
"Value": "0"
},
{
"Namespace": "aws:autoscaling:scheduledaction",
"ResourceName": "OvernightShutdown",
"OptionName": "StartTime",
"Value": "2015-11-18T16:50:00Z"
},
{
"Namespace": "aws:autoscaling:scheduledaction",
"ResourceName": "OvernightShutdown",
"OptionName": "Recurrence",
"Value": "00 21 * * 1-5"
},
{
"Namespace": "aws:autoscaling:scheduledaction",
"ResourceName": "MorningStartup",
"OptionName": "MinSize",
"Value": "1"
},
{
"Namespace": "aws:autoscaling:scheduledaction",
"ResourceName": …
Rundeck支持通过API触发作业.API文档可在文档下找到.
我们正在使用API版本13,它还不支持application/json.因此,我需要使用基于XML的请求.
在我以前的尝试中,我总是得到回应:
<result error="true" apiversion="13">
<error code="api.error.job.options-invalid">
<message>Job options were not valid: Option 'container' is required. Option 'version' is required.
</message>
</error>
</result>
由于没有提供示例请求,我正在搜索触发作业的示例有效负载.
如在响应中所见,我必须提供参数"container"和"version",因为它们是必需的.
我最近的请求有效负载是:
<executeJob>
<argString>-container containerName -version 1234567</argString>
</executeJob>
我也尝试过这种有效载荷的不同变体,每次都有相同的响应.