Articles of docker

docker:SSH直接访问容器

到目前为止,我们使用几个Linux用户: system_foo @服务器 system_bar @服务器 … 我们想把系统用户放到docker容器中。 linux用户system_foo – >容器system_foo 服务器内部的更改没有问题,但远程系统使用这些用户向我们发送数据。 我们需要让ssh system_foo@server工作。 远程系统不能改变。 如果每个Linux操作系统只有一个系统(通过端口22到容器),那么我会非常容易。 但有几个。 我们如何才能从旧的scheme更改为docker集装箱,并保持服务的ssh system_foo@server可用,而无需在远程站点的变化? 如果你不明白这个问题,请留下评论。 谢谢。

我如何在AWS Elastic Beanstalk中使用非默认运行参数运行Docker容器?

我有一个Docker容器,在我的本地开发机器上运行良好。 我想将其移至AWS Elastic Beanstalk ,但是我遇到了一些麻烦。 我正在尝试通过使用s3fs将S3存储桶装载到我的容器中。 我有Dockerfile: FROM tomcat:7.0 MAINTAINER me@example.com RUN apt-get update RUN DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential libfuse-dev libcurl4-openssl-dev libxml++2.6-dev libssl-dev mime-support automake libtool wget tar # Add the java source ADD . /path/to/tomcat/webapps/ ADD run_docker.sh /root/run_docker.sh WORKDIR $CATALINA_HOME EXPOSE 8080 CMD ["/root/run_docker.sh"] 我安装了s3fs ,安装了一个S3存储桶,并在映像创build后运行Tomcat服务器,方法是运行run_docker.sh : #!/bin/bash #run_docker.sh wget https://github.com/s3fs-fuse/s3fs-fuse/archive/master.zip -O /usr/src/master.zip; […]

在添加新的veth界面时运行脚本

Docker为每个创build的容器创build一个连接到桥( docker0 )的veth接口。 http://docs.docker.io/use/networking/ 我想限制这些新的veth接口的带宽。 我find了一个与奇迹般的做法。 不过,我想自动化这一点。 有没有办法让钩子在每次连接一个新的veth接口时运行一个脚本? 我已经研究过在/etc/network/if-up.d/添加脚本,但是只有在启动时veth添加veth 。 以下是我想要通知的一些系统日志。 我知道我可以尾巴这些日志,但是这种方法似乎有点哈克,必须有一种方式通过操作系统得到这个事件的通知。 May 2 23:28:41 ip-10-171-7-2 kernel: [22170163.565812] netlink: 1 bytes leftover after parsing attributes. May 2 23:28:42 ip-10-171-7-2 kernel: [22170163.720571] IPv6: ADDRCONF(NETDEV_UP): veth5964: link is not ready May 2 23:28:42 ip-10-171-7-2 kernel: [22170163.720587] device veth5964 entered promiscuous mode May 2 23:28:42 ip-10-171-7-2 avahi-daemon[1006]: Withdrawing […]

NoClassDefFoundError启动docker服务器

我正在尝试在jetty服务器上托pipe我的webapp(spring)。 我将我的战争文件复制到docker服务器中的“webapp”文件夹中。 我不是试图embeddeddocker服务器,而是试图在docker内托pipe应用程序(如tomcat)。 我dint安装docker,我只是下载jetty7邮编和解压缩到服务器。 我需要在3台Linux机器上进行设置。 在一台机器服务器启动就好。没有问题。 但在另外两个,当服务器启动它显示以下错误。 2013-04-24 18:52:59.540:INFO :: started oejwWebAppContext {/cpewebapp,file:/tmp/jetty-0.0.0.0-9080-cpewebapp.war-_cpewebapp-any-/webapp /},/ home / manooja /jetty-hightide-7.4.0.v20110414/webapps/cpewebapp.war 2013-04-24 18:52:59.648:WARN :: FAILED spring:java.lang.NoClassDefFoundError:org / springframework / web / context / support / DefaultWebEnvironment 2013-04-24 18:52:59.648:WARN :: FAILED oejwWebAppContext {/cpewebapp,file:/tmp/jetty-0.0.0.0-9080-cpewebapp.war-_cpewebapp-any-/webapp /},/ home / manooja /jetty-hightide-7.4.0.v20110414/webapps/cpewebapp.war:java.lang.NoClassDefFoundError:org / springframework / web / context / support / DefaultWebEnvironment 2013-04-24 […]

Vagrant,共享文件夹:利用NFS进行inotify

我们的Symfony2 web应用程序使用开发模式下的Assetic观察器在旅途中重新编译资产。 webapp运行在一个运行在Vagrant VM(Ubuntu 12.04 Precise)的Docker容器中。 主机是OSX 10.9 Mavericks,它通过NFS(v3)共享与VM共享代码文件夹,代码通过Docker中的主机/来宾卷安装在容器中。 由于inotify似乎无法通过NFSv3检测文件修改,因此观察者以非常缓慢的轮询模式(检测修改大约1/2分钟)工作。 我读过NFSv4是符合规范的,但是我没有发现任何好的资源。 有没有办法使NFS / inotify一起工作?

如何将我的容器上的localhost端口转发到我的主机上的localhost?

我在我的主机上运行一个守护进程(例如8008),我的代码通常与守护进程交互,例如联系localhost:8008。 我现在集装箱了我的代码,但还没有守护进程。 如何将容器上的localhost:8008转发到运行该容器的主机上的localhost:8008(因此也是守护进程)。 以下是我的主机上的netstat -tlnp 。 我希望容器在主机上将localhost:2009转发到localhost:2009 Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:2009 0.0.0.0:* LISTEN 22547/ssh tcp6 0 0 :::22 :::* LISTEN – tcp6 0 0 ::1:2009 :::* LISTEN 22547/ssh

Dockerize用户会议

我正在寻找一些关于如何在Linux中dockerize用户会话的帮助。 我正在寻找的是如何做到这一点,当有人ssh进入一个帐户,做任何事情,当他们退出任何他们没有保存; 这就是我在下一次有其他人ssh进入它的时候设置它的方式。 这是CTF活动,我负责设立,而且对于我所要做的大部分工作都不了解,整个过程对我来说是一个学习的经验。 我希望如何build立一个很好的解释在这里解释: http : //overthewire.org/help/sshinfra.html

docker容器如何比主机操作系统有更多的内存?

REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE Image_Name latest d8dcd701981e About an hour ago 6.565 GB 我正试图在我的客户操作系统(ubuntu14.04)中运行这个镜像,这是使用虚拟盒子运行的。 我已经为我的客户操作系统(Ubuntu 14.04)分配了4GB内存,但是当我在客户操作系统中运行我的容器并使用docker stats gigantic_cori检查docker docker stats gigantic_cori它显示内存限制为5.028GB。 这怎么可能?? CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O gigantic_cori 0.02% 4.6 GB / 5.028 GB 2.02% 44.43 MB / 20.51 MB 580.2 MB / 3.196 […]

高山linux:pmap输出不显示RSS

我有一个Docker容器,运行一个高山linux的基础镜像,当我进入docker容器并运行命令: pmap -x [pid] 我在输出中看到的标题是: Address Kbytes PSS Dirty Swap Mode Mapping 我实际上明确寻找RSS(驻留集大小)。 为什么这个标题没有出现在输出中?

Docker以root用户身份挂载一个卷

问题描述 我有一个Docker镜像,它正在执行大量的卷安装选项。 它的构build方式使得默认用户不具有root权限。 但是,我需要确保,当我装入卷时,由于安全问题,它以root用户身份挂载,而不是作为当前工作用户挂载。 (当前正在运行的非root用户不得删除已安装卷中的任何文件。) 例 从主机: docker run -it -v /path/to/mount:/container/mounting/path image-name 在容器内部 current-user@docker-container : /container/mounting/path所有文件都必须拥有所有者权限root root而不是current-user current-user 。