Github Actions执行Docker命令报错:command not found: docker 求助
解决Github Actions中macos-latest runner找不到Docker命令的问题
问题原因
- Docker服务未启动:macos-latest运行器默认已安装Docker Desktop,但服务并未自动启动,导致执行
docker命令时提示"command not found"。 - 命令参数错误:你的
docker build命令中--flask-webyogixyz2345是无效参数,正确指定镜像标签需使用-t参数。
修复后的Github Actions脚本
name: Docker Image CI on: push: branches: [ "new-feature" ] pull_request: branches: [ "new-feature" ] defaults: run: shell: zsh {0} jobs: build: runs-on: macos-latest steps: - uses: actions/checkout@v3 # 启动Docker Desktop并等待服务就绪 - name: Start Docker Desktop run: | open -a Docker # 循环检查Docker服务状态,直到启动完成 until /usr/local/bin/docker info > /dev/null 2>&1; do echo "等待Docker服务启动..." sleep 10 done - name: Build the Docker image # 修正参数:使用-t指定镜像标签 run: docker build . --file Dockerfile -t flask-webyogixyz2345
关键修复点说明
- 启动Docker服务:通过
open -a Docker启动Docker Desktop应用,再通过循环执行docker info验证服务是否就绪,避免因Docker未完全启动导致后续命令失败。 - 修正build命令参数:将原命令中的无效参数替换为
-t flask-webyogixyz2345,-t是Docker官方指定的镜像标签参数,用于为构建的镜像命名。
内容的提问来源于stack exchange,提问作者Yogyakartas
相关产品推荐
相关产品推荐

