如何在Docker容器中安装Docker? [英] How to install docker in docker container?

查看:1911
本文介绍了如何在Docker容器中安装Docker?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的Dockerfile:

  FROM golang 
#RUN cat / etc / * release
运行apt-get更新
运行apt-get -y安装apt-transport-https ca证书curl gnupg2 software-properties-common
RUN curl -fsSL https://download.docker.com/linux / debian / gpg | apt-key add-
运行add-apt-repository deb [arch = amd64] https://download.docker.com/linux/debian $ {lsb_release -cs)稳定

运行apt-get更新
运行apt-get -y安装docker-ce
运行docker run hello-world

golang Dockerfile是官方的,它基于

  Debian GNU / Linux 8(jessie )

所以我通过检查 Docker Install Tutor(Debian)



但是输出是

 步骤8/8:运行docker run hello-world 
--->在b183b8cc5d10
docker中运行:无法以
unix:///var/run/docker.sock连接到Docker守护程序。泊坞窗守护程序正在运行吗?
请参阅 docker run --help。



如何解决此问题?我想在主机docker容器中建立docker容器。图片。要解决这个问题:


  1. 首先删除以下行:从您的 Dockerfile

  2. 最简单的方法是通过使用 -v 标志绑定安装或安装来公开Docker套接字使用 Docker Compose

docker run的卷-v /var/run/docker.sock:/var/run/docker.sock ...


This is my Dockerfile:

FROM golang
# RUN cat /etc/*release
RUN apt-get update
RUN apt-get -y install apt-transport-https ca-certificates curl gnupg2 software-properties-common
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

RUN apt-get update
RUN apt-get -y install docker-ce
RUN docker run hello-world

The golang Dockerfile is official, it bases on the

Debian GNU/Linux 8 (jessie)

So I wrote down this Dockerfile by checking the install steps from Docker Install Tutor(Debian)

But the output is

Step 8/8 : RUN docker run hello-world
 ---> Running in b183b8cc5d10
docker: Cannot connect to the Docker daemon at 
unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.

How to solve this problem? I want to establish docker containers in the host docker container.

解决方案

I had a similar problem trying to install Docker inside a Bamboo Server image. To solve this:

  1. first remove the line: RUN docker run hello-world from your Dockerfile
  2. The simplest way is to just expose the Docker socket, by bind-mounting it with the -v flag or mounting a volume using Docker Compose:

docker run -v /var/run/docker.sock:/var/run/docker.sock ...

这篇关于如何在Docker容器中安装Docker?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆