首页 > 解决方案 > 无法在 docker 容器中运行 docker (macOS)

问题描述

我正在尝试运行一个 Jenkins Docker 容器,该容器绑定到我的 Mac(Big Sur)内的 docker 套接字和 docker 路径。我运行的命令是:

docker run -p 8080:8080 -p 50000:50000 -d \             
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(which docker):/usr/bin/docker jenkins/jenkins:lts

但是,如果我docker exec -it $CONTAINER_ID bash进入容器然后运行,docker ps我会得到:

jenkins@67494b7442cd:/$ docker ps
bash: docker: command not found

在我的 Mac 主机上,which docker输出/usr/local/bin/docker 但在容器本身内部,ls /usr/bin/docker什么也不输出。

有任何想法吗?

标签: macosdocker

解决方案


您需要在容器内安装 docker。尝试将此添加到您的 dockerfile:

RUN apk add --update --no-cache docker

(这假设你是使用高山)


推荐阅读