Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker容器打印到Docker ps状态字段(运行状况:开始)_Docker_Command Line Interface_Status - Fatal编程技术网

Docker容器打印到Docker ps状态字段(运行状况:开始)

Docker容器打印到Docker ps状态字段(运行状况:开始),docker,command-line-interface,status,Docker,Command Line Interface,Status,我注意到gitlab image container在启动时向docker ps命令的status字段添加了额外的信息: 最多19秒(运行状况:开始) 一旦准备就绪,状态将更改为: 最多3分钟(健康) 通常括号中没有信息,但gitlab设法将额外的文本打印到状态字段中 如何在运行容器时将任意文本打印到状态字段?这应该在docker文件内完成,还是运行的容器应该有一个输出docker ps状态字段中显示的文本的进程 要运行gitlab,可以使用以下脚本: #!/bin/sh set -e; se

我注意到gitlab image container在启动时向
docker ps
命令的
status
字段添加了额外的信息:

最多19秒(运行状况:开始)

一旦准备就绪,状态将更改为:

最多3分钟(健康)

通常括号中没有信息,但gitlab设法将额外的文本打印到状态字段中

如何在运行容器时将任意文本打印到状态字段?这应该在docker文件内完成,还是运行的容器应该有一个输出docker ps状态字段中显示的文本的进程

要运行gitlab,可以使用以下脚本:

#!/bin/sh

set -e;
set -f;

export GITLAB_HOME="/tmp/gitlab/srv/gitlab";
mkdir -p "$GITLAB_HOME";
mkdir -p "$GITLAB_HOME/var/opt/gitlab";
mkdir -p "$GITLAB_HOME/var/log/gitlab";
mkdir -p "$GITLAB_HOME/etc/gitlab";

docker run --detach \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
在运行它之后运行它

docker ps

要查看状态字段中的附加文本,大约1分钟后,它应更改为(正常)

非常确定文本来自docker,而不是流程。如果健康检查通过一分钟,docker打印健康,所包含的进程没有设置字符串。@zero298这是我最初的想法,但其他容器中的任何一个都不会打印任何附加信息,MySQL在冷启动时可能比gitlab花费更多的时间,但不会打印任何附加信息来确认@zero298所说的内容;即Docker打印图像中定义的
HEALTHCHECK
命令的结果。