【问题标题】:Start cron jobs in docker-compose from host?从主机启动 docker-compose 中的 cron 作业?
【发布时间】:2019-09-09 00:01:21
【问题描述】:

我有一个带有一些容器的 docker-compose.yml。我需要在 docker-compose 容器之一中启动命令。这个我试过了

* * * * * /usr/local/bin/docker-compose -f ~/directory/to/docker-compose.yml  run --rm -T -w /var/www php /var/www/bin/yii bigquery/events

但是没有用。有什么想法吗?

【问题讨论】:

    标签: docker cron docker-compose


    【解决方案1】:

    我解决了这个问题。您只需要在命令执行之前更改完整的 docker-compose 路径!

    * * * * * cd ~/directory/to/your/docker-compose && /usr/local/bin/docker-compose -f ~/directory/to/docker-compose.yml run --rm -T -w /var/www php /var/www/bin/yii bigquery/events
    
    

    【讨论】:

      【解决方案2】:

      您应该改用docker-compose execdocker-compose run 在新容器中运行命令。

      【讨论】:

      • 如果我在本地运行这个命令/usr/local/bin/docker-compose -f ~/directory/to/docker-compose.yml run --rm -T -w /var/www php /var/www/bin/yii bigquery/events 它可以工作。但是当我在 cron 中启动这个命令时它不起作用。
      • 在我的日志文件中我有下一个:未设置 COMPOSE_PROJECT_NAME 变量。默认为空字符串。 NGINX_CONF 变量未设置。默认为空字符串。 MONGO_DATABASE 变量未设置。默认为空字符串。 MONGO_USERNAME 变量未设置。默认为空字符串。 MONGO_PASSWORD 变量未设置。默认为空字符串。 Compose 文件 '/path/to/docker-compose.yml' 无效,因为:services.nginx.ports 包含无效类型,它应该是数字或对象
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-27
      • 2019-12-21
      • 2018-01-03
      • 2020-03-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多