Tag: virtualbox

从Docker中检测Virtualbox

我的使用Docker的应用程序应该在Ubuntu中直接和Windows + VirtualBox(没有Vagrant)略有不同。 是否有可能检测到我是否在 Ubuntu > Docker > Ubuntu或in Windows > VirtualBox > Ubuntu > Docker > Ubuntu ? 为什么我需要这个? 我有PHP的Symfony应用程序和开发环境是非常缓慢的Windows(每个请求需要超过5秒),因为VirtualBox共享文件夹。 我将var/cache和var/logs移出到/dev/shm/appname/ ,一切都变得更快了。 但是使用Ubuntu的开发者并不需要这个function – 即使没有这个黑客攻击,它也能正常工作。 我的想法 每个开发人员都可以拥有自己docker-compose.yml并设置环境variables,但是现在我们在大多数情况下共享相同docker-compose.yml 。

docker安装在virtualbox中的ubuntu,不能拉图像

我有安装Ubuntu 14.04.5作为guest虚拟机在virtualbox 5.0.26在Windows 10上运行。我不知道任何与Ubuntu安装问题,它似乎运行良好,并有桥接互联网连接,所以得到自己的IP。 我已经安装了泊坞窗,遵循docker docs for linux的指导 。 安装进行没有任何错误罚款和docker守护进程开始确定。 这是docker信息: root@ubuntu-z9:~# docker info Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 1.12.0 Storage Driver: aufs Root Dir: /var/lib/docker/aufs Backing Filesystem: extfs Dirs: 0 Dirperm1 Supported: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: overlay bridge host null […]

如何共享我的Mac和Docker容器之间的文件夹

花了一些时间试图设置一个Docker容器,并访问我的Mac上的一个文件夹。 我知道你可以使用Docker Volumes来连接主机上的一个文件夹,在Mac上这个文件夹最终是VirtualBox中的Linux,docker run的参数是-v。 考虑到这一点,我想我可以在VirtualBox中设置共享文件夹,然后将其映射到Docker容器。 但是,我一直无法获得我已经添加到VB显示的共享文件夹。 以下是我所做的: 1)在VBpipe理员中添加了一个共享文件夹 2)通过docker-machine restart和VB应用程序本身重新启动VB操作系统 3)通过docker-machine sshlogin到VB OS 4)做了一个ls -l的根目录 用户文件夹(在VB中已经存在)显示出来,但是我添加的文件夹(Projects)没有。 我无法弄清楚为什么两个文件夹都不会出现。 任何人有这个问题? 似乎有这么多的人在谈论使用Docker进行本地开发,以及许多使用Mac的开发人员,这将是一个简单的问题。 但是…唉…不是我到目前为止。 谢谢你的帮助。

将运行PHP的Docker容器连接到主机(在VirtualBox上的ubuntu)MSQL服务器

在Ubuntu 16.04上运行VirtualBox,其中有一个安装了Apache2和PHP的Docker容器。 MYSQL安装在主机上(在VirtualBox上的Ubuntu上)。 我正在尝试从Docker容器访问主机上的MYSQL服务器 <?php $host = '192.168.136.101'; $user = 'root'; $pass = '****'; $db = 'test'; $port = '3306'; $con = mysqli_connect($host,$user,$pass,$db,$port); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } ?> 我得到一个拒绝通知连接。 当启动容器时,我试过了 docker run -ti -p 80:80 -p 3306:3306 IMAGE 哪个不起作用,因为主机上的MYSQL服务器正在使用端口3306,如果我在主机上停止MYSQL服务器,执行docker run命令,但是我无法在主机上启动MYSQL服务 我也试过了 docker run […]

在VirtualBox中使用Docker进行Sentry安装的过程中的ERR_EMPTY_RESPONSE

我正按照指示安装Sentry和Docker。 我用-p 8080:9000选项运行哨兵: docker run -d -p 8080:9000 –name my-sentry -e SENTRY_SECRET_KEY='<secret-key>' –link sentry-redis:redis –link sentry-postgres:postgres sentry 我有ifconfig下一个输出: $ ifconfig docker0 Link encap:Ethernet HWaddr 02:42:0b:b2:d5:41 inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:bff:feb2:d541/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:123 errors:0 dropped:0 overruns:0 frame:0 TX packets:78 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:6960 […]

什么是Docker守护进程的名字?

我在macOS上运行Docker 。 这意味着我真的在装有VirtualBox的Linux虚拟机上运行Docker。 这是正确的吗? 从macOS我无法看到docker守护程序,因为它没有运行在我的macOS机器上: $ ps aux | grep docker max 4873 0.0 0.0 2432804 1732 s001 R+ 11:12AM 0:00.00 grep –color=auto docker 但是,如果我SSH入虚拟机(名为default ),那么我可以看到docker相关的进程: $ docker-machine ssh default ## . ## ## ## == ## ## ## ## ## === /"""""""""""""""""\___/ === ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~ \______ […]

无法在Mac OS X主机上的Windows 10 VirtualBox VM中运行基于Docker的Windows容器

当我尝试使用以下命令运行基于docker的Windows容器时,出现以下错误: docker pull microsoft/dotnet-framework docker run -it microsoft/dotnet-framework cmd docker:来自守护进程的错误响应:容器31112532fbefca415cfb10134612cf4467c084e93e699b7caa320ca60f5df266在CreateContainer期间遇到错误:Windows系统调用失败:此系统上不存在pipe理程序。 (0xc0351000) Docker for Windows在Macbook Pro(基于Intel,2016,OS X El Capitan)上的Windows 10 Pro VM(使用VirtualBox)中设置。 在Docker的设置中,我切换到使用Windows容器。 有没有OS X的特定问题? 因为我可以在运行Windows 10 Pro的个人电脑上工作。

在vmware中连接到运行在docker中的webserver

在我的Mac上,我在VMware中运行Windows Server 2016。 在那里,我在vagrant / Virtual Box中运行Ubuntu。 在那里,我正在用nginx / uwsgi在Docker容器中运行一个django应用程序。 networking服务器正在9003上进行侦听,并且从在Windows VM中运行的浏览器中,我可以使用localhost:9003连接到networking服务器。 我希望能够从运行在我的Mac上的浏览器和本地networking上的其他机器上连接到它。 在VMwarenetworking设置中,我有Internet共享,select与我的Mac共享。 在Windows VM中我看到这个: $ ipconfig Windows IP Configuration Ethernet adapter vEthernet (HNS Internal NIC): Connection-specific DNS Suffix . : Link-local IPv6 Address . . . . . : fe80::a088:5807:8265:722%11 IPv4 Address. . . . . . . . . . . : […]

如何将Docker端口2375从virtualbox转发到主机操作系统窗口10

我创build了一个debian虚拟机,让我的docker主机运行。 netstat的 tcp 0 0 127.0.0.1:2375 0.0.0.0:* LISTEN 1260 / dockerd 之后,我按照许多在线教程中的描述设置端口2375端口转发。 接下来,我在我的Windows 10主机操作系统的cmd中curl 。 C:\Users\me>curl localhost:2375 curl: (56) Recv failure: Connection was reset 注意连接到虚拟机的SSH端口正在工作。 C:\Users\me>curl localhost:666 SSH-2.0-OpenSSH_7.4p1 Debian-10+deb9u1 Protocol mismatch. 有谁能告诉我我错过了什么? 我必须允许从默认允许SSH端口的外部调用端口2375吗?

如何为多个提供者编写一个Vagrantfile,每个提供者使用不同的方框?

我的目标是创build一个Vagrantfile,我可以select使用Docker或VirtualBox使用–provider标志(例如vagrant up –provider = virtualbox)。 我遇到了一个问题,因为Docker提供者说我的盒子不兼容。 这是真的,但我不希望Docker使用这个盒子; 我有一个我指向Docker使用的Dockerfile。 我只想在VirtualBox是提供者的情况下使用这个盒子。 如何让Docker提供程序忽略框声明或仅在VirtualBox是提供程序时才使框声明运行? 这是我的stream浪文件: Vagrant.require_version ">= 1.7.0" Vagrant.configure('2') do |config| PROJECT_ROOT = File.expand_path(File.join(File.dirname(File.expand_path(__FILE__)), '..')) config.vm.provider "docker" do |d| d.build_dir = "." d.has_ssh = true end config.vm.box = "ubuntu/trusty64" # <——— this is the line the Docker provider chokes on config.vm.provider "virtualbox" do |v| v.gui = true end config.vm.network […]