Tag: docker

请参阅Docker中运行/停止容器的完整命令

如何在Docker中看到正在运行的容器/进程的完整命令? $ docker ps –all CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5b6291859b61 nginx:1.7.8 "nginx -g 'daemon of 4 minutes ago Exited (0) 4 minutes ago thirsty_brattain 我只能看到“nginx -g”的守护进程“..这里,不是完整的命令。

在docker集装箱内使用sudo

通常,docker容器是使用root用户运行的。 我想使用不同的用户,这是使用docker的USER指令没有问题。 但是这个用户应该可以在容器内使用sudo 。 该命令丢失。 这是一个简单的Dockerfile用于这个目的: FROM ubuntu:12.04 RUN useradd docker && echo "docker:docker" | chpasswd RUN mkdir -p /home/docker && chown -R docker:docker /home/docker USER docker CMD /bin/bash 运行这个容器,我用用户'docker'login。 当我尝试使用sudo时,找不到命令。 所以我试图在我的Dockerfile中使用安装sudo软件包 RUN apt-get install sudo 这导致无法find软件包sudo 我不知道如何pipe理这个。 有什么build议么? 多谢!

将主机端口转发到Docker容器

是否有可能有一个由主机打开的Docker容器访问端口? 具体来说,我有主机上运行的MongoDB和RabbitMQ,我想在Docker容器中运行一个进程来侦听队列并(可选)写入数据库。 我知道我可以从容器转发到主机(通过-p选项),我有一个从外部世界(即互联网)从Docker容器的连接,但我不想公开RabbitMQ和MongoDB端口从主机到外部世界。 编辑:一些澄清: Starting Nmap 5.21 ( http://nmap.org ) at 2013-07-22 22:39 CEST Nmap scan report for localhost (127.0.0.1) Host is up (0.00027s latency). PORT STATE SERVICE 6311/tcp open unknown joelkuiper@vps20528 ~ % docker run -i -t base /bin/bash root@f043b4b235a7:/# apt-get install nmap root@f043b4b235a7:/# nmap 172.16.42.1 -p 6311 # IP found via docker inspect […]

docker运行<IMAGE> <MULTIPLE COMMANDS>

我试图运行这样的MULTIPLE命令。 docker run image cd /path/to/somewhere && python a.py 但是这给了我“没有这样的文件或目录”的错误,因为它被解释为… "docker run image cd /path/to/somewhere" && "python a.py" 看起来像“”或()这样的一些ESCAPE字符是需要的。 所以我也试过了 docker run image "cd /path/to/somewhere && python a.py" docker run image (cd /path/to/somewhere && python a.py) 但是这些都不起作用。 我已经search了Docker运行参考,但没有find有关ESCAPE字符的任何提示。

在OS X上用Docker设置开发环境的正确方法是什么?

介绍 我无法find一个好的方法来在OS X上使用Docker和Boot2Docker来设置开发环境。 我遇到的问题是如何pipe理源代码,以便: 我可以使用已经安装的工具(文本编辑器,IDE,git等)修改OS X上的代码。 这些修改反映在Docker容器中,所以如果我重新运行testing或刷新网页,我可以立即看到我的更改。 理论上,通过将我的源代码安装为一个卷,这应该很容易: docker run -it -v /path/to/my/source/code:/src some-docker-image 不幸的是,这有两个主要的问题,使得它在OS X上完全无法使用: 问题#1:在Virtual Box(使用vboxsf)上挂载的卷非常慢 例如,如果源代码是Docker镜像的一部分,这里是Jekyll编译我的主页需要多长时间: > docker run -it brikis98/yevgeniy-brikman-homepage:v1 bash root@7aaea30d98a1:/src# time bundle exec jekyll build […] real 0m7.879s user 0m7.360s sys 0m0.600s 这里是完全相同的Docker镜像,除了这次,我从OS X安装源代码: > docker run -it -v $(pwd):/src brikis98/yevgeniy-brikman-homepage:v1 bash root@1521b0b4ce6a:/src# time bundle exec jekyll build […] […]

使用简单构build工具(sbt)和IntelliJ来debuggingScala代码

使用IntelliJ的内置debugging器来debuggingsbtpipe理的Scala代码最简单的方法是什么? 来自sbt的google代码网站的“RunningSbt”的文档列出了用于运行项目或testing的主类的命令,但似乎没有用于debugging的命令。 后续问题:使用sbt的jetty-run命令时,将IntelliJ的debugging器连接到Jetty最简单的方法是什么?

链接和docker_compose.yml中的depends_on之间的区别

根据Docker Compose的撰写文档文档 : depends_on – 服务之间的快速依赖关系。 links – 链接到另一个服务中的容器,也以与depends_on相同的方式表示服务之间的依赖关系 。 我不明白链接到其他容器的目的,所以两个选项之间的差异对我来说似乎还相当困难。 有一个例子会容易得多,但是我找不到。 请帮我理解这两个。 先谢谢你! 编辑:所以我注意到,当我连接容器B与容器A然后容器B将(是什么字?)在容器A的壳内pingable 。 我在容器A的bash内部运行了ping B ,得到了这样的结果(仅供参考,来自Internet的图像) 对不起,我的英文破碎:(

Jetty和Netty有什么区别?

Jetty和Netty的主要区别是什么? Netty是Jboss的一部分,但它是默认的Web服务器容器? Netty是否支持Servlets 3.0?

将用户添加到Docker容器

我有一个docker容器,里面运行着一些进程(uwsgi和芹菜)。 我想为这些进程创build一个芹菜用户和一个uwsgi用户,以及它们都属于的工作组,以分配权限。 我尝试将RUN adduser uwsgi和RUN adduser celery到我的Dockerfile中,但是这会导致问题,因为这些命令提示input(我已经发布了下面的内部版本的响应)。 将用户添加到Docker容器以便为在容器中运行的工作人员设置权限的最佳方式是什么? 我的Docker镜像是从官方的Ubuntu14.04基础上构build的。 以下是运行adduser命令时Dockerfile的输出: Adding user `uwsgi' … Adding new group `uwsgi' (1000) … Adding new user `uwsgi' (1000) with group `uwsgi' … Creating home directory `/home/uwsgi' … Copying files from `/etc/skel' … [91mEnter new UNIX password: Retype new UNIX password: [0m [91mpasswd: Authentication token manipulation error passwd: password […]

为什么Docker容器镜像这么大?

我通过Fedora的Dockerfile(最初为320 MB)制作了一个简单的图像。 添加了Nano(这个1MB大小的微型编辑器),图像的大小已经上升到530 MB。 我已经添加了Git(30-MB),然后我的图像大小天空火箭到830 MB。 疯了吗? 我试图导出和导入容器来删除历史/中间图像。 这项工作节省了25 MB,现在我的图像大小是804 MB。 我也试着在一个RUN上运行很多命令,但是我仍然得到了相同的初始830MB。 我怀疑是否值得使用Docker。 我的意思是,我几乎没有安装任何东西,而我正在打1GB。 如果我不得不添加一些像数据库这样严重的东西,我可能会用完磁盘空间。 任何人都有可笑的大小的图像? 你如何解决? 除非我的Dockerfile是非常不正确的? FROM fedora:latest MAINTAINER Me NotYou <email@dot.com> RUN yum -y install nano RUN yum -y install git 但很难想象这里会出现什么问题。