首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在码头集装箱内安装/启动码头引擎服务

如何在码头集装箱内安装/启动码头引擎服务
EN

Stack Overflow用户
提问于 2017-01-19 12:56:15
回答 1查看 3.1K关注 0票数 3

我要把詹金斯从詹金斯的正式码头集装箱里拿出来。我有下面的dockerfile,按照https://docs.docker.com/engine/installation/linux/debian/的说明

代码语言:javascript
复制
FROM jenkins:2.32.1

# install docker inside this container
USER root
    # Install Docker inside Jenkins
    RUN apt-get update
    RUN apt-get purge "docker.io*"
    RUN apt-get update
    RUN apt-get install -y apt-transport-https ca-certificates gnupg2
    RUN apt-key adv \
       --keyserver hkp://ha.pool.sks-keyservers.net:80 \
       --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
    RUN echo "deb https://apt.dockerproject.org/repo debian-jessie main" > /etc/apt/sources.list.d/docker.list
    RUN apt-get update
    RUN apt-cache policy docker-engine
    RUN apt-get update
    RUN apt-get install -y docker-engine
    RUN gpasswd -a jenkins docker
    USER jenkins

然后我执行以下操作:

  • 从这个dockerfile生成一个图像
  • 从图像中运行容器
  • root用户的身份在容器中执行bash
  • 在容器内的bash中运行sudo docker service start

我得到的是:

代码语言:javascript
复制
root@1e0f4b325d58:/# sudo service docker start
mount: permission denied
rmdir: failed to remove ‘cpu’: Read-only file system
mount: permission denied
rmdir: failed to remove ‘cpuacct’: Read-only file system
mount: permission denied
rmdir: failed to remove ‘net_cls’: Read-only file system
mount: permission denied
rmdir: failed to remove ‘net_prio’: Read-only file system
/etc/init.d/docker: 96: ulimit: error setting limit (Operation not permitted)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-19 13:04:57

如果要在码头内运行码头,则需要将容器作为特权容器运行。

因此,像这样的东西 (1)是必需的:

代码语言:javascript
复制
docker run --privileged your_image:tag

您还需要小心iptables和Armour,但是经过一些改进之后,这是可行的。

另一种方法是允许访问容器就像这样 (2)中的停靠守护进程:

代码语言:javascript
复制
docker run -v /var/run/docker.sock:/var/run/docker.sock your_image:tag

参考:

1 https://blog.docker.com/2013/09/docker-can-now-run-within-docker/

2 https://jpetazzo.github.io/2015/09/03/do-not-use-docker-in-docker-for-ci/

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41742330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档