Tag: docker boot2docker

在docker容器中的mysql不能在os x上运行安装的卷

在OS X上。 我试图在docker容器中通过boot2docker运行mysql,在主机上挂载volume /var/lib/mysql ,这样我就可以拥有持久的mysql数据。 我打算将来只使用一个数据容器,但现在我正在尝试使用此选项来执行此操作。 我使用下面的命令来运行容器: docker run -v /Users/yash/summers/db:/var/lib/mysql -i -t 'image name' /Users/yash/summers/db文件夹已经在那里。 我在这方面面临着执法问题。 使用命令行,我可以访问目录,创build/删除新文件,但是当我运行service mysql start ,我得到以下错误: 150528 15:43:43 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 150528 15:43:43 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the […]

在boot2docker中不使用主机DNS的Docker容器

我在我的Mac上运行boot2docker。 OSX版本10.9.3 boot2docker版本4.3.12 Docker版本0.12.0 boot2docker映像是一个使用virtualbox的stream浪盒。 我已经尝试了一些stream浪汉箱(例如stigkj / boot2docker)。 他们都展示了这个问题。 如果我ssh进入boot2docker映像,看看/etc/resolv.conf它使用的是nameserver 10.0.2.3。 我用这个命令启动一个简单的docker映像: docker run -i -t ubuntu /bin/sh 查看该容器中的/etc/resolv.conf,它使用8.8.8.8和8.8.4.4作为名称服务器。 在docker.log上的docker.log文件中,有这样一行: 2014/06/30 15:25:01 Local (127.0.0.1) DNS resolver found in resolv.conf and containers can't use it. Using default external servers : [8.8.8.8 8.8.4.4] 据我所知,docker应该使用主机的名称服务器。 只有当主机使用127.0.0.1作为域名服务器时,它应该默认为google的域名服务器作为备份。 主机没有使用127.0.0.1作为名称服务器,但似乎docker认为它是。 任何build议,我怎样才能正确地检测到名称服务器?

传入variables或者回答Dockerfile

这似乎是一个经常被问到的问题。 我想再问一遍,看看是否有人提出了答案,或者看看有人能否提出其他build议。 我们有很多计算机和运行服务,更新它们通常是一件很头痛的事情。 Docker来了 我们想自动化这个过程。 Docker可以很好地工作,但是我想自动化构build,这样我们团队中的任何人都可以做到这一点。 部分过程涉及克隆一些git存储库。 我可以做的一件事是使用shell脚本在本地克隆仓库,然后将它们复制到镜像中,但由于有一个dockerfile可以自动执行,所以将方向放在那里似乎很自然。 这不是一个问题,除了提供git凭证。 目前我正在复制我的id_rsa在构build过程中。 虽然是复制它,从回购拉,然后删除我的凭据。 这应该工作正常,除了Dockerfile不接受用户input。 当我去添加我的SSH密钥在dockerfile,它希望我的密钥密码…泊坞窗只是胡扯了,因为它不能采取用户input。 我如何解决这个问题,并使这个过程自动化? 这是一个来自dockerfile的示例。 FROM ubuntu:14.04 MAINTAINER Senica Gonzalez <senica@gmail.com> RUN apt-get -y update RUN apt-get -y upgrade RUN apt-get -y install git-core RUN apt-get -y install vagrant RUN mkdir /home/.ssh COPY id_rsa /home/.ssh/id_rsa RUN eval "$(ssh-agent -s)"; ssh-add /home/.ssh/id_rsa; ssh-add -l

无法连接到来自中国的docker中心

每次尝试使用Fedora 20上的docker运行busybox或在VirtualBox中运行boot2docker时,我都会得到相同的结果: [me @ localhost〜] $ docker run -it busybox无法在本地查找图像'busybox:latest'拉取资源库busybox FATA获取https://index.docker.io/v1/repositories/library/busybox/images :读取tcp 162.242.195.84:443:I / O超时 我可以在浏览器中打开https://index.docker.io/v1/repositories/library/busybox/images ,有时候不使用vpn隧道,因此在使用Astrill时提供的代理在networking设置中尝试设置代理VPN共享,但总是会超时。 目前在中国,由于防火墙基本上没有互联网,npm,git和wget似乎在terminal中使用Astrill代理(在Fedora 20的networking设置中设置它),但是不知何故我不能得到docker守护进程使用它或其他东西是错误的。

什么是从Windows共享文件到Boot2docker虚拟机的最佳方式

我已经在Windows上准备好了我的代码,但是我发现分享到boot2docker并不容易。 我也发现boot2docker不能执行我的更改。 比如我创build一个文件夹/ temp,重新启动boot2docker后,这个文件夹消失了,非常不方便。 当你在Windows上有一些代码时,你的方式是什么,但是你需要docker化他们? —更新— 我尝试更新Virtual Box中的设置并重新启动boot2docker,但是在我的机器上无法正常工作。 docker @ boot2docker:/ $ ls -al / c 总共4 drwxr-xr-x 3 root root 60 Jun 17 05:42 ./ drwxrwxr-x 17 root root 400 Jun 17 05:42 ../ dr-xr-xr-x 1docker工作人员4096 Jun 16 09:47用户/

如何增加boot2docker虚拟机中的可用交换空间?

我想运行一个docker容器,需要大量内存不足的机器上。 我一直试图增加可用的容器交换空间无济于事。 这是我尝试的最后一个命令: docker run -d -m 1000M –memory-swap=10000M –name=my_container my_image 按照这些关于如何检查内存指标的提示 ,我发现了以下内容: $ boot2docker ssh docker@boot2docker:~$ cat /sys/fs/cgroup/memory/docker/35af5a072751c7af80ce7a255a01ab3c14b3ee0e3f15341f7bb22a777091c67b/memory.stat cache 454656 rss 65015808 rss_huge 29360128 mapped_file 208896 writeback 0 swap 0 pgpgin 31532 pgpgout 22702 pgfault 49372 pgmajfault 0 inactive_anon 28672 active_anon 65183744 inactive_file 241664 active_file 16384 unevictable 0 hierarchical_memory_limit 1048576000 hierarchical_memsw_limit 10485760000 total_cache 454656 […]

Boot2Docker在Windows启动失败

我正在尝试从winodws7企业版启动docker。 boot2docker start 结果 Waiting for VM and Docker daemon to start… ………………………………………………………………..oooooo oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo Started. Trying to get Docker socket one more time Error requesting socket: exec: "ssh": executable file not found in %PATH% Docker client does not run on Windows for now. Please use "boot2docker" ssh to SSH into the VM instead. 我试过这个链接 。 […]

Boot2Docker启动Ubuntu镜像

我试图让我的Windows 7 / Boot2Docker机器最新的Ubuntu图像,但是当我尝试启动图像,我得到一个错误信息。 exec: "C:/Program Files (x86)/Git/bin/bash": stat C:/Program Files (x86)/Git/bin/bash: no such file or directory 完整的错误消息: $ docker run -t -i ubuntu /bin/bash exec: "C:/Program Files (x86)/Git/bin/bash": stat C:/Program Files (x86)/Git/bin/bash: no such file or directory FATA[0000] Error response from daemon: Cannot start container 100e77a5ac95f8fb8dc55e6382e7a8cd6f946ec807e90d9efdb6fc905a046569: [8] System error: exec: "C:/Program Files (x86)/Git/bin/bash": stat […]

为什么我的docker容器的Apache服务将被closures,每当我附上我的容器,然后退出?

我在Docker容器中发现了一个有趣的行为,或者我实际上是在错误地使用它。 这是我的经验 每次当我附加到我的容器,然后退出我的容器,我的apache服务将被closures,我需要做的是重新回到并再次运行Apache服务器…是这样的正常? (我的容器只是一个正常的灯pipe) docker attach 8d009c6b9a3f root@8d009c6b9a3f# exit // and my apache will be shut down 仅供参考,我正在使用Mac和docker机。

在dockerfile中插入条件运行语句

我正在尝试编写一个docker文件,它将运行一个RUN命令来searchpackage.json文件中的一个单词并对其执行操作: 这是我简单的dockerfile: FROM ubuntu:14.04 COPY package.json package.json RUN if grep -q "grunt" package.json; then echo succeed fi 正如你可以看到我只是想要一个简单的if语句,但它得到这个错误: Step 2 : RUN if grep -q "grunt" package.json; then echo succeed fi —> Running in af460df45239 /bin/sh: 1: Syntax error: end of file unexpected (expecting "fi") INFO[0001] The command [/bin/sh -c if grep -q "grunt" package.json; […]