Articles of Docker

如何更改Windows 2016泊坞窗dynamic/暂时端口范围

所以我一直试图在AWS EC2上使用Windows Server 2016 docker,默认情况下,当docker容器试图访问互联网时,它使用1024或更高的短暂端口范围? 是否有任何使窗口docker使用主机使用的标准短暂(dynamic)端口范围? 编辑 – 窗口上的docker容器本身没有exception的短暂端口范围。 它是主机上的NATnetworking,似乎是在低端口上发送的。

保护来自Jenkins用户的Docker

我需要让低级用户访问各种Jenkins作业,我想在主机上运行Jenkins作为Docker容器。 我知道如果一个用户(通过sudo或其他)可以访问Docker守护进程,那么由于Docker的能力(挂载根文件系统等),我实际上放弃了在主机上的超级用户访问。 从Jenkins保护我的Docker守护进程的最好方法是什么? 工作需要能够启动容器等 Docker 1.10是否解决了这个问题?

在真实和dockerized实例之间部署Mongo副本集

我想知道是否可以用一个真正的mongo实例连接两个docker集装箱。 我真的想从远程主机同步一个450GB的数据库,同时在位于另一个物理服务器上的容器上运行副本集。 我创build了原始数据库的更小转储的原始应用程序的dockerized版本,我非常满意。 现在是考虑移动原始数据库的时候了。 我已经有了一些关于如何在这个问题上设置不同容器之间的副本集的好build议,但是现在我真的不确定要遵循的path。 一开始我想转储原始数据库并将其恢复到新的实例中,但是有定期运行脚本的cron作业来更新原始数据库。 我想避免在数据收集方面存在差距。 我真的很想了解这个大动作的最佳做​​法。 不知道它可能是有用的知道,但我们现在通过VPN访问此数据库的时刻。

连接到MongoDB的Dockerized实例时身份validation失败

我有一段时间连接到一个Dockerized的MongoDB实例。 我能够在本地开发机器上按照这些指令configuration一个MongoDB容器,但是同样的步骤在生产中似乎不起作用。 我确切的步骤来创build,运行和连接到容器: 创build并运行容器 docker run –name prod-mongo -p 27017:27017 -d mongo –auth 添加了初始用户: docker exec -it prod-mongo mongo admin db.createUser({user:'skipper', pwd:'skipperspassword', roles:[{role:'userAdminAnyDatabase',db:'admin'}] }); 成功连接到来自另一个Mongo容器的Docker容器: docker run -it –rm –link prod-mongo:mongo mongo mongo -u skipper -p –authenticationDatabase admin prod-mongo/skippers-apps 未成功连接到Docker主机的Docker容器: mongo skippers-apps –authenticationDatabase admin -u skipper -p 这是我关心的最后一步。 它在我的本地开发环境中工作,但不是生产。 开发环境 操作系统:Mac OS El Capitan 内核版本15.6.0 […]

我应该在容器中运行fstrim吗?

如果我在fstrim容器中运行fstrim ,会出现有关主机挂载(?)文件not a directory 。 $ docker run -ti -v tmp:/tmp2 ubuntu:16.04 /sbin/fstrim –all fstrim: /etc/hosts: not a directory fstrim: /etc/hostname: not a directory fstrim: /etc/resolv.conf: not a directory fstrim: /tmp2: FITRIM ioctl failed: Operation not permitted 我猜这是因为容器没有特权 。 (至less是FITRIM ioctl failed错误) 我通过在新的ubuntu:16.04上安装cron发现了这一点ubuntu:16.04容器(我知道它违反了“一个进程”的哲学 – 这是另一个讨论)但默认的图像有/etc/cron.weekly/fstrim所以一旦你安装cron, fstrim启动运行每周和cron电子邮件我的错误。 我应该在容器中运行fstrim吗? 我还在包围着aufs ,我发现的关于fstrim所有网页fstrim讨论了SSD和可用空间恢复。 这是否适用于一个容器? 主人的fstrim cron工作不会照顾一切吗? 我应该从容器中删除cron作业还是docker中的错误? 编辑:系统信息: $ […]

docker工人与docker执行者的Gitlab亚军

我想在Docker容器中运行Gitlab CI Runner,同时也使用Docker执行程序在我们的Docker容器中运行我的构build,所有这些都在CoreOS之上。 这甚至有可能吗? 我目前发现的每个文档都假定Gitlab Runner在主机操作系统上运行,这对我来说不是一个可行的select。 另一种方法是使用专门的gitlab-runner容器,并在每个容器中安装构build依赖项。

如何在调用.php文件时将请求从一个容器redirect到另一个容器

我正在使用Docker和Docker-Compose的LAMP堆栈中工作,由于我无法执行PHP文件,所以我尝试使用http://localhost/index.php ,结果出现以下403消息: Forbidden You don't have permission to access /index.php on this server. 目前我有两个服务在不同的容器中运行,请参阅下面docker-compose.yml : version: '2' services: php-fpm: container_name: "php-fpm" build: ../docker-php-fpm volumes: – ~/dev:/data/www httpd: container_name: "httpd" build: ../docker-httpd ports: – 8080:80 volumes_from: – php-fpm links: – php-fpm 您可能注意到PHP-FPM正在一个容器中运行,Apache(httpd)运行在另一个容器中。 容器和服务都在运行。 我在httpd容器上有一个VirtualHost文件,内容如下: <VirtualHost *:80> ServerName localhost DocumentRoot /data/www DirectoryIndex index.php <Directory /data/www> Options FollowSymLinks […]

CoreOS:如何在Cloud-config中设置Docker容器的依赖关系?

我有一个基本的cloud-config.yaml在cloud-config.yaml上运行四个容器(直接,没有集群)。 两个容器( nginx-gen和nginx-letsencrypt )从名为nginx的容器中挂载卷。 每个容器启动都被定义为一个systemd单元。 我已经添加了After=和Requires=依赖关系,但是在首次login时,我迎接: CoreOS stable (1185.5.0) Failed Units: 2 letsencrypt.service nginx-gen.service nginx (提供音量的那个)正在运行。 如果之后我执行: sudo systemctl start nginx-gen.service sudo systemctl start letsencrypt.service 他们开始和正确运行,所以我想这个问题是在系统启动依赖。 我没有CoreOS和systemd的经验,所以原因可能是非常基本的(比如在Docker容器实际运行之前获得“完整”状态的单元)。 看着journalctl日志,事实上nginx-gen服务在它有机会从nginx挂载卷之前就失败了: … Jan 02 14:35:47 core-01 systemd[1]: nginx-gen.service: Failed with result 'start-limit-hit'. … Jan 02 14:36:03 core-01 docker[1401]: Status: Downloaded newer image for nginx:latest … 我能做些什么来解决这个问题? 我的cloud-config.yaml : […]

在使用targetcli的容器中创buildSRP目标时出错

我试图设置一个使用LIO托pipeSRP目标的容器(CentOS 7)。 据我可以告诉容器有正确的访问主机上的位(CoreOS 4.7.3),因为我能够启动targetcli没有错误,并成功地创build一个新的块设备。 我试图发出的下一个命令是/srpt create wwn=<Infiniband WWPN>但我得到错误 Could not create SRPTFabricModule in configFS 我用来运行我的容器的命令是 docker run -it –rm –privileged –cap-add=ALL \ –tmpfs /run –tmpfs /run/lock -v /lib/modules:/lib/modules \ -v /sys/kernel/config:/sys/kernel/config \ -v /dev/infiniband:/dev/infiniband hpc/san /bin/bash 这就是我所能find的一切,在容器中使用InfiniBand接口和ZFS。 我在Github的zfsonlinux repo上发现了一个问题,那就是rmmod target_core_mod ,然后是modprobe和mount configfs ,但是对于target_core_mod没有装载它的情况,这并不是我所拥有的。 lsmod | grep configfs configfs 32768 4 rdma_cm,iscsi_target_mod,target_core_mod mount | grep configfs […]

在Debian的Docker容器中运行dnsmasq – check_dhcp忽略dnsmasq

我在我的Virtualbox Debian机器上testing我的dnsmasq DHCP的configuration。 在生产中,我希望dnsmasq为通过qemu + libvirt + openvswitch运行的访客系统提供静态IP地址(我已经介绍了一个,它们通过docker运行,它们工作) dnsmasqconfiguration: # Tried both eth0 and br0 for an interface – more about it near bottom interface=br0 domain-needed bogus-priv no-resolv local=/mydomain.io/ no-poll no-hosts domain=mydomain.io dhcp-range=192.168.1.129,192.168.1.254,255.255.255.128,192.168.1.255,12h dhcp-option=3 log-queries log-dhcp Dockerfile: FROM alpine:3.5 MAINTAINER [email protected] # webproc release settings ENV WEBPROC_VERSION 0.1.7 ENV WEBPROC_URL https://github.com/jpillora/webproc/releases/download/$WEBPROC_VERSION/webproc_linux_amd64.gz # fetch dnsmasq and […]