我有一个带有经典 Ubuntu 基础映像的 Dockerfile,我正在尝试减小大小。这就是我使用 Alpine 基地的原因。
在我的 Dockerfile 中,我必须安装 Docker,所以 Docker 中的 Docker。
FROM alpine:3.9
RUN apk add --update --no-cache docker
这很好用,我可以docker version
在我的容器内运行,至少对于客户端而言。因为对于服务器,我有经典的 Docker 错误说:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
我知道在 Ubuntu 中安装 Docker 后我必须运行
usermod -a -G docker $USER
但是在阿尔卑斯山呢?我怎样才能避免这个错误?
PS:
我的第一个想法是通过绑定挂载重新使用 Docker 套接字/var/run/docker.sock:/var/run/docker.sock
,从而进一步减小图像的大小,因为我不必重新安装 Docker。
但是由于 Dockerfile 中不允许绑定挂载,您知道我的想法是否可行以及如何实现吗?我知道这在 Docker-compose 中是可能的,但我只能使用 Dockerfile。
谢谢