Tag: vagrantfile

Docker提供商在Vagrant上同步文件夹错误

我正试图通过docker提供商在无业游民中自动build立一个Docker镜像。 我的目录看起来像这样: Dockerfile external .vagrant Vagrantfile 我的Dockerfile的相关部分如下所示: FROM ubuntu:14.04 MAINTAINER Austin Lopez <austinhlopez@gmail.com> … RUN sudo mv /tmp/external/{my_file}.tar . RUN sudo tar xvf {my_file}.tar 我的Vagrantfile看起来像这样: # -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure(2) do |config| config.vm.synced_folder "./external", "/tmp/external" config.ssh.insert_key = false config.vm.provider "docker" do |d| d.build_dir = "." d.force_host_vm = true end […]

vagrant:在Docker实例启动后在Virtualbox中运行shell脚本(sorting错误)

我有以下设置与stream浪汉。 一台运行优胜美地的Mac笔记本电脑。 在笔记本电脑内部,一个使用Virtualboxpipe理的Ubuntu trusty64实例。 在Virtualbox Ubuntu实例的内部,有两个Docker容器,其中一个运行Postgres,另一个运行Redis。 我想按以下顺序执行命令: 启动Virtualbox Ubuntu实例。 启动Docker容器。 启动Docker容器。 在Ubuntu实例上运行一个命令。 我需要命令最后运行,因为我希望它与容​​器交互。 这是我现在在我的stream浪文件中 – 我们正在使用多机configuration。 我已经省略了一些forward_port细节,因为它们似乎与Vagrant运行提供程序的顺序无关。 Vagrant.configure("2") do |config| config.vm.provider "docker" do |d| d.vagrant_vagrantfile = "./docker-Vagrantfile" end config.vm.define "db" do |p| p.vm.provider "docker" do |pd| # … end end config.vm.define "redis" do |r| r.vm.provider "docker" do |rd| rd.name = "redis" rd.image = "redis" end […]

使用Vagrant设置swarm模式的Docker Swarm

我正在使用Vagrant和当地的一家供应一些DEV最小的centos虚拟机。 这些虚拟机都运行Docker 1.12.x,现在我正在考虑自动创build一个群集模式群集。 我们的目标是做到vagrant up ,当气候回归时,我有一个集群起来跑步。 我遇到的麻烦是我可以在其中一个盒子上运行一个docker swarm init –advertise-addr <my init swarm mgr> ,但是我需要从这个盒子中取出pipe理器和工作节点的标记,并将它们注入随后build立的虚拟机。 我无法编程Ruby,如果我能避免它,我真的不会开始使用Docker Remote API。 我已经试过从一个testing虚拟机设置请求hostid尝试和分配一个来宾cmd输出到Vagrantfile中的一个variables,但我的Ruby没有达到从头开始。 无论如何,问题是如何在使用本地虚拟机configuration虚拟机时使用Vagrant创build群集模式群集。 编辑:我刚才看到stream浪的scp ,我至less可以用它来提取文件的forms的令牌,并将其复制到相关的机器。 我希望保持纯粹的东西而不是插入,并且避免使用Ruby来运行更多的stream浪命令(有没有更好的方法来做到这一点?),但至less可以利用stream浪汉和当地人。

使用Vagrant Docker提供程序从boot2docker转发端口

我试图利用Vagrant 1.6的Docker提供商,我似乎遇到了一个麻烦。 我可以成功地启动Docker容器和客户操作系统,但是我无法从主机操作系统访问容器内部提供的服务。 这是我的stream浪文件: VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.network :forwarded_port, guest: 8000, host: 8000 config.vm.define "icecast" do |v| v.vm.provider "docker" do |d| d.image = "moul/icecast" d.ports = ["8000:8000"] d.env = { # SOURCE_PASSWORD: 'password', ADMIN_PASSWORD: 'password', # PASSWORD: 'password', # RELAY_PASSWORD: 'password' } end end end 我的理解是,在OS X上运行vagrant up –provider=docker将启动运行boot2docker的虚拟机,然后运行我的容器。 运行vagrant docker-logs似乎确认我的容器已经创build,服务启动,但现在我不能为我的生活弄清楚如何从我的OS X主机访问服务。 […]

如何使用vagrant 1.6和docker提供商来映射docker端口

我正在试图将我的docker容器端口从容器映射到主机(boot2docker)。 最终目标是将这些端口映射到我的物理机器,但一次只能一步。 我的Vagrantfile目前看起来像: Vagrant.configure("2") do |config| config.vm.define "app1" do |a| a.vm.provider "docker" do |d| d.build_dir = "dockers/app1" d.name = "app1" d.ports << "8080:8080" d.ports << "8443:8443" d.volumes << "/vagrant/data/app1:/var/app1" end end config.vm.define "app2" do |a| a.vm.provider "docker" do |d| d.build_dir = "dockers/app2" d.name = "app2" d.ports << "8081:8081" d.link("app1:app1") end end end 当我运行vagrant up app1 […]

没有检测到“客户机”中安装了“rsync”

我试图设置docker作为提供商的stream浪者,但运行时 vagrant up –provider=docker –debug 我得到这个错误: 没有检测到“客户机”中安装了“rsync”。 这是rsync同步文件夹工作所必需的。 除此之外,Vagrant不知道如何为您的机器自动安装rsync,因此您必须手动执行此操作。 完整日志在这里: http : //pastebin.com/zCTSqibM Vagrantfile require 'yaml' Vagrant.configure("2") do |config| user_config = YAML.load_file 'user_config.yml' config.vm.provider "docker" do |d| d.build_dir = "." d.has_ssh = true d.ports = user_config['port_mapping'] d.create_args = ["–dns=127.0.0.1","–dns=8.8.8.8", "–dns=8.8.4.4"] d.build_args = ['–no-cache=true'] end config.vm.hostname = "dev" config.ssh.username = "it" config.ssh.port = 22 config.ssh.private_key_path = […]

Vagrant和Docker提供程序:容器未加载,Boot2Docker VM不可用于SSH

我试图部署一个简单的httpd服务器与docker和stream浪,以解决与virtualbox共享文件夹的文件权限问题(我使用rsync与vagrant,并运行Windows作为主机) 当我运行vagrant up ,虚拟机启动(我可以确认与VBox GUI),但然后vagrant警告说,不能build立与虚拟机的SSH连接,容器永远不会被加载。 在这里, vagrant up的输出: Bringing machine 'default' up with 'docker' provider… ==> default: Docker host is required. One will be created if necessary… default: Vagrant will now create or start a local VM to act as the Docker default: host. You'll see the output of the `vagrant up` for this VM […]

Docker在debianstream浪盒里面失败了

在Docker版本为17.11.0-ce的Vagrant框中, 构build1caf76c ,这个docker命令失败: docker run mongo:3.4 -v /home/vagrant/src/db:/db -p 27017:27017 –name mongo 与以下错误消息: docker: Error response from daemon: cgroups: memory cgroup not supported on this system: unknown. ERRO[0027] error waiting for container: context canceled OS: Distributor ID: Debian Description: Debian GNU/Linux 8.9 (jessie) Release: 8.9 Codename: jessie 有没有人有一个线索如何解决这个问题? 它与一个不超过几周前的杰西盒子一起工作。 谢谢 :)

如何从Vagrant VM中访问Docker容器

我有一个提供两个Docker容器的Vagrant设置。 Docker容器启动没有问题。 在Vagrant VM中,我可以运行docker ps并查看两个容器连接到正确的端口。 如果我运行docker logs XXX我看到我的Redis和Mongo守护进程都在运行。 但是,从stream浪者箱子本身,我不能telnet或访问任何运行的服务。 我总是得到一个拒绝的连接。 我如何让Vagrant虚拟机看到在Docker中运行的服务? 我的Vagrantfile看起来像: Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.host_name = "trusty" config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box" config.vm.box = "trusty64" config.vm.network :private_network, ip: "192.168.10.12" config.vm.network :forwarded_port, guest: 6379, host: 6379 config.vm.network :forwarded_port, guest: 27017, host: 27017 config.vm.provision "docker" do |d| d.pull_images 'dockerfile/redis' d.pull_images 'dockerfile/mongodb' d.run 'dockerfile/redis', ports: ['6379:6379'], name: 'redis', expose: […]