Docker 守护进程启动后运行 shell 脚本

Docker 守护进程启动后运行 shell 脚本

我的 docker 守护进程在用户登录时启动,我想在它准备就绪后运行一个脚本。

我知道,open -a Docker但是命令在 Docker 启动时返回。

如何确保 docker 在由 launchd 代理启动的 bash 脚本中已准备就绪?

答案1

您可以使用docker version,如果 Docker 守护进程未运行,则返回退出状态 1。

#!/bin/bash

# Uncomment next line if you want to start Docker from this script.
# open -a Docker

# Loop until 'docker version' exits with 0.
until docker version > /dev/null 2>&1
do
  sleep 1
done

上述脚本将docker version每秒执行一次,直到以 0 退出,这意味着 docker daemon 已准备就绪。

相关内容