在 Amazon ECS任務定義中指定容器重新啟動政策 - Amazon Elastic Container Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 Amazon ECS任務定義中指定容器重新啟動政策

若要在任務定義中指定容器的重新啟動政策,請在容器定義內指定restartPolicy物件。如需restartPolicy物件的詳細資訊,請參閱 重新啟動政策

以下是使用 Fargate 啟動類型上設定 Web 伺服器之 Linux 容器的任務定義。容器定義包含 restartPolicy 物件,enabled設定為 true 以啟用容器的重新啟動政策。容器必須執行 180 秒,才能重新啟動,如果使用結束碼 結束,則不會重新啟動0,這表示成功。

{ "containerDefinitions": [ { "command": [ "/bin/sh -c \"echo '<html> <head> <title>Amazon ECS Sample App</title> <style>body {margin-top: 40px; background-color: #333;} </style> </head><body> <div style=color:white;text-align:center> <h1>Amazon ECS Sample App</h1> <h2>Congratulations!</h2> <p>Your application is now running on a container in Amazon ECS.</p> </div></body></html>' > /usr/local/apache2/htdocs/index.html && httpd-foreground\"" ], "entryPoint": ["sh", "-c"], "essential": true, "image": "httpd:2.4", "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "/ecs/fargate-task-definition", "awslogs-region": "us-east-1", "awslogs-stream-prefix": "ecs" } }, "name": "sample-fargate-app", "portMappings": [ { "containerPort": 80, "hostPort": 80, "protocol": "tcp" } ], "restartPolicy": { "enabled": true, "ignoredExitCodes": [0], "restartAttemptPeriod": 180 } } ], "cpu": "256", "executionRoleArn": "arn:aws:iam::012345678910:role/ecsTaskExecutionRole", "family": "fargate-task-definition", "memory": "512", "networkMode": "awsvpc", "runtimePlatform": { "operatingSystemFamily": "LINUX" }, "requiresCompatibilities": ["FARGATE"] }

使用容器定義中的restartPolicy物件註冊任務定義後,您可以執行任務或使用該任務定義建立服務。如需詳細資訊,請參閱 將應用程式作為 Amazon ECS任務執行使用主控台建立 Amazon ECS服務