Tag:

docker集装箱/图像不保存更改

我拉了一个MySQL泊坞窗(最新),运行后,我试图在这个mysql docker实例中添加一些Data&New Schema's&tables之后提交我的容器。 对于参考,我正在关注此链接 – > http://www.servermom.org/pull-docker-images-run-docker-containers/3225/ 但即使尝试了多个变化,我没有达到我的意图。 所以我正在做的是添加新的表和模式到我的容器后,我正在提交和推送到链接中提到的Docker中心。 之后,我删除删除第一拉图像,因为我已经添加新的数据到一个容器,并承诺作为一个新的图像与不同的标签..我删除第一拉图像。 (我这样做的原因是因为让我说,如果我改变我的机器,我可以让我的数据完整无缺时,我做了我的承诺图像docker拉) 就像git,如果我犯了推,让我说我的机器坏了,所以在新机器我只需要做一个混帐拉,我会得到一切没有任何损失。 所以我不能理解为什么docker没有保存更改

Docker Ubuntu的容器可以ping archive.ubuntu.com,但不能apt-get

我使用docker-machine在我们的OpenStack私有云上安装Docker主机。 一切都如预期。 但是当我尝试用ubuntu:14.04构buildDockerfile时,只需执行一个RUN apt-get update : Ign http://archive.ubuntu.com trusty InRelease Ign http://archive.ubuntu.com trusty-updates InRelease … 永远,并超时。 然后我删除RUN apt-get update并运行docker build -t test . 和docker run -it test /bin/bash 在容器内我可以ping archive.ubuntu.com和任何其他域罚款。 我在我的resolve.conf中看到nameserver 8.8.8.8在那里。 但是当我尝试再次运行apt-get update时,我得到了相同的结果。 我试图用–dns 8.8.8.8标志运行容器,没有什么区别。 但是因为我的resolve.conf文件有DNS条目,而且我可以ping这些域名,所以这不应该成为问题。 如果我用–net=host标志运行容器,我可以apt-get更新。 但是这个标志不适用于docker build命令。 我也尝试了这个build议的答案,我在这里find。 sudo apt-get install bridge-utils pkill docker iptables -t nat -F ifconfig docker0 down brctl […]

docker机器实例不在端口8080上运行

我正试图让这个教程工作。 但在教程结束时,它说运行http://192.168.99.100:8080,并看到您的网站。 但是在运行docker机器之后,它并没有显示出来。 根本没有条目。 所以我的问题是我怎么能得到一个运行在nginx容器上的docker-machine实例? 我假设这是一个运行wwwroot文件夹,这是指向它,并具有服务器的所有端口和根调用。 在docker-compose.yml中我的代码和教程一样,但是在这里是: version: '2' services: nginx: build: context: . dockerfile: docker.nginx image: my-nginx container_name: my-nginx-container ports: – "8080:8080" volumes: – wwwroot:/wwwroot webpack: build: context: . dockerfile: docker.webpack image: my-webpack container_name: my-webpack-container ports: – "35729:35729" volumes: – ./app:/app – /app/node_modules – wwwroot:/wwwroot volumes: wwwroot: driver: local

boot2docker和docker-machine IP地址的稳定性/可靠性如何?

我知道我可以使用boot2docker ip或boot2docker ip docker-machine ip来获取boot2docker / docker-machine虚拟机的分配IP地址。 从我所了解的默认IP地址是: boot2docker:192.168.59.103 docker机:192.168.99.100 这是我的问题: 我能否假设这些地址一般都会被使用,除非在同一个networking/主机上与其他设备/虚拟机有冲突? 在同一台docker-machine上停止/启动boot2docker或boot2docker docker-machine时,我可以依赖于VM始终使用相同的IP地址吗? 我在问,因为我想将由boot2docker shellinit或boot2docker shellinit docker-machine env dev创build的环境variables存储在我的用户configuration文件中,所以我不必在每次启动/停止VM时都运行这些命令。

Docker:无法访问容器主机/端口

我有一个容器 ps -a de3ff650fbef tasklist-img "/bin/sh -c 'java -ja" 2 minutes ago Up 2 minutes 8080/tcp, 0.0.0.0:8080->8081/tcp tasklist-img-01 而不能访问像本地主机:8080 /任务列表 当我检查我得到的IP地址172.17.0.2 JSON,也是无法访问 }, "NetworkSettings": { "Bridge": "", "SandboxID": "82398f58a56f6685223df13f0e053c1ad388505ff595ec270eb4e9a445109641", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": { "8080/tcp": null, "8081/tcp": [ { "HostIp": "0.0.0.0", "HostPort": "8080" } ] }, "SandboxKey": "/var/run/docker/netns/82398f58a56f", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, […]

docker机与外部主机连接

我正在使用docker-machine v0.2,而且我有两台OS 14.04的主机(hostA,hostB)。 然后我按照官方文档安装和使用docker机。最后,我已经安装在我的主机A:docker和docker机。 当我使用驱动程序virtualbox( docker-machine create –driver virtualbox dev驱动程序docker-machine create –driver virtualbox dev )的例子,所有没关系。 我有一个名为“dev”的boot2docker虚拟机,如下所示: docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM dev virtualbox Running tcp://192.168.99.101:2376 然后我尝试在hostB上configurationdocker,但是我找不到正确的方法来做到这一点。 任何人都知道怎么做? 可以使用docker-machine来configuration外部主机,而不使用云提供者驱动程序。

无法更改在MAC上使用docker-machine安装的主机目录的所有权

我运行docker-machine时,在我的mac上使用vboxsf,当我运行以下命令 docker run \ -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -P -v $(pwd)/data:/var/lib/mysql mysql:5.6 它无法以正确的权限安装卷,因此没有数据可以写入目录 然后我使用docker-machine-nfs来挂载/ Users,然后命令返回 chown: changing ownership of '/var/lib/mysql/': Operation not permitted 我错过了什么?

docker设置推读的超时时间

每当我推动较大的docker图像,我得到一个阅读超时。 当我再次尝试推送时,我收到“正在进行中”消息。 我在osx上使用docker-machine(virtualbox)。 这导致我相信这个形象正在推进的背景,但我的虚拟机连接超时。 这似乎只在较大的图像。 如何设置linux命令行docker客户端的读取超时? docker push repository.com/thing Image f7a77fb0b14d already pushed, skipping Image 01e40c794f94 already pushed, skipping Image 7547e52aac4b already pushed, skipping HTTPSConnectionPool(host='192.168.99.101', port=2376): Read timed out. docker push repository.com/thing Sending image list push repository.com/thing is already in progress

防止docker机器下载更新的boot2docker ISO?

是否有一些方法来防止docker机器在运行docker-machine create时尝试下载更新的boot2docker映像ISO? 注意我的~/.docker/machine/cache目录中已经有了一个镜像, ~/.docker/machine/cache docker-machine只是试图抓取一个更新的镜像。 注2:closures我的电脑的wifi工程,但这是远远优化。

对于由docker-machinepipe理的boot2docker虚拟机,复制或scp文件到/ var / lib / boot2docker

为了在OS X上使用Docker,我使用了由docker-machinepipe理的VirtualBox中运行的boot2docker虚拟机。 boot2docker文档提到了一个持久化卷/var/lib/boot2docker 。 我想将主机文件系统上的文件bootlocal.sh复制到boot2docker虚拟机上。 我以为docker-machine的scp命令会为此工作, docker-machine scp bootlocal.sh dockerhost:/var/lib/boot2docker/ 不幸的是,这给了 scp: /var/lib/boot2docker/bootlocal.sh: Permission denied exit status 1 检查文件权限,我们可以看到, root是唯一具有写入权限的目录,默认情况下: docker@dockerhost:~$ ll -d /var/lib/boot2docker lrwxrwxrwx 1 root root 29 May 31 17:40 /var/lib/boot2docker -> /mnt/sda1/var/lib/boot2docker/ docker@dockerhost:~$ ll -d /mnt/sda1/var/lib/boot2docker drwxr-xr-x 6 root root 4096 May 31 17:40 /mnt/sda1/var/lib/boot2docker/ 无法将用户root指定为与docker-machine scp一起使用的用户。 如何将文件复制到/var/lib/boot2docker ,最好从主机?