使用计时器运行docker容器(延迟)

问题描述 投票:0回答:1

我在 docker 中运行 20 个容器,如果所有容器同时运行,我会遇到一些问题,在 5 个容器运行后,其余容器将在每个日志中显示太多请求。

如何设置从一个容器到下一个容器的延迟 1 分钟或更长时间,以便下一个容器将在第一个容器成功运行后再运行 1 分钟。

atm 我只是手动重置其余容器

可以在 portainer 中做到这一点吗?

谢谢。

docker containers delay
1个回答
0
投票

您可以使用

docker compose
和健康检查来实现此目的:

例如:

version: '3.8'

services:
  service1:
    image: <your_image1>
    container_name: container1
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:80"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 30s

  service2:
    image: <your_image2>
    container_name: container2
    depends_on:
      service1:
        condition: service_healthy
    command: sh -c sleep 60

  service3:
    image: <your_image3>
    container_name: container3
    depends_on:
      service2:
        condition: service_healthy
    command: sh -c sleep 60
© www.soinside.com 2019 - 2024. All rights reserved.