Docker:如何使用“Docker/compose”容器?

dgtucam1  于 2022-11-22  发布在  Docker
关注(0)|答案(3)|浏览(169)

我想使用官方的docker/compose container在Docker容器中运行Docker Compose。
我的Dockerfile看起来像这样:

FROM docker/compose:latest
WORKDIR /
COPY ./docker-compose.yml .
COPY ./.env .
CMD [ "docker-compose", "up"]

运行docker build -t my-container .正常。但运行docker run --privileged my-container失败,原因是:

> Couldn't connect to Docker daemon at http+docker://localhost - is it running?
>
> If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.

我做错了什么?我必须指定DOCKER_HOST吗?如果是,指定什么?

xzv2uavs

xzv2uavs1#

我 猜 图像 docker/compose 是 用来 构建 docker-compose 工具 的 , 而 不是 在 里面 启动 docker 。 它 是 为 那些 编辑 docker-compose 源 代码 的 人 设计 的 。
但是 , 您 可以 使用 dind 图像 ( docker 中 的 docker ) 。

z2acfund

z2acfund2#

尝试在dind(docker-in-docker)中安装docker-compose,如下所示:

FROM docker:20.10-dind
RUN apk add docker-compose
WORKDIR /
COPY ./docker-compose.yml .
COPY ./.env .
CMD [ "docker-compose", "up"]
djmepvbi

djmepvbi3#

尝试docker run -v /var/run/docker.sock:/var/run/docker.sock -it container_name
它将共享坞站插座。

相关问题