繁体   English   中英

docker-compose容器启动后的打印状态

[英]Print status after docker-compose container starts

在docker-compose文件中,是否可以等待容器启动然后再打印状态?

例如sleep 10 && echo started mysql on http://${HOST}:${PORT}

Dockerfile有一个run命令,但是compose文件中没有这样的东西。 我怎样才能做到这一点?

使用docker-compose ,就像常规docker run [...] ,您可以指定entrypoint (参见此处 )和command (参见此处 )。

但是,在您的情况下,我要做的是根据您喜欢的MySQL映像构建自己的Docker映像,然后将简单的入口点脚本COPY到执行所需功能的映像中,例如

#!/bin/sh

sleep 10

[command to run MySQL]

echo "Started MySQL on xyz"

然后指定该脚本ENTRYPOINT在你的Dockerfile。

最好的方法是将其添加到撰写文件中:

print-status:
  image: busybox
  env_file: .env
  command: "sh -c 'sleep 10 && echo \"http://localhost:${PORT}\"'"
  depends_on:
    - mysql

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM