标签: vagrant

使用 Chef Solo 运行 `apt-get upgrade`

我正在使用 Chef Solo 为 Ubuntu 12.04 提供基于 Opscode 的“Bento”框的 Vagrant VM。当它完成配置并且我第一次通过 SSH 登录时,MOTD 告诉我有软件包和安全更新。然后我sudo apt-get upgrade手动运行,这会删除后续登录时的消息。有没有办法用 Chef 自动化这一步?“apt”食谱似乎没有处理这个问题。我所有的谷歌搜索只找到关于apt-get update但不是apt-get upgrade。我可以在我的 Chef 配方中执行 apt-get 命令,但是在升级过程中,粉红色屏幕上有一个伪 GUI,我必须在其中选择要安装的驱动器(我认为这称为 GRUB,我是新手到 Ubuntu),我不确定如何使用 Chef 自动化这部分。

ubuntu chef chef-solo vagrant

4
推荐指数
1
解决办法
4338
查看次数

端口转发在 VirtualBox (Vagrant) 中不起作用

我有 CentOs 的 VirtualBox(实际上是 Vagrant)。我在那里有端口转发(NAT)。例如,我的盒子中有一些应用程序绑定到端口 8080。端口被转发。所以我可以从我的主机和来宾机器连接到这个端口。

telnet 127.0.0.1 8080
Run Code Online (Sandbox Code Playgroud)

但是我无法从我的主机上执行任何操作:

telnet 127.0.0.1 8080
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
HEAD / HTTP/1.0
....sleeeeeep.....
Run Code Online (Sandbox Code Playgroud)

但它适用于我的流浪 ssh 会话。

如何解决?

virtualization port-forwarding vagrant

3
推荐指数
1
解决办法
6535
查看次数

我可以在生产环境中使用 Vagrant

这周我开始玩 Vagrant 和 Docker。我对所有的概念都感到非常兴奋。

有没有人在生产环境中使用 Vagrant 或者只是用来维护开发机器的镜像?

vagrant

3
推荐指数
1
解决办法
2万
查看次数

Vagrant:我需要一个没有依赖关系的配置系统

开始使用流浪配置。主机是Windows。我有一个非常简单的配置,所以我想使用 Ansible,但得到了这个:

[default] Running provisioner: ansible...
The executable 'ansible-playbook' Vagrant is trying to run was not
found in the %PATH% variable. This is an error. Please verify
this software is installed and on the path.
Run Code Online (Sandbox Code Playgroud)

所以基本上,我认为这意味着 Vagrant 想要自己安装 Ansible,并试图使用 Ansible 的现有实例(我没有)。

我的问题是:Vagrant 中是否内置了Chef 或 Puppet ?我希望能够只安装 Vagrant 并vagrant up按照它应该的工作方式运行,除此之外无需在主机上安装配置系统。

谢谢!

puppet chef vagrant ansible

3
推荐指数
1
解决办法
631
查看次数

如何使用 shell 提供程序上传配置文件?

除了在我的客户机上安装 emacs 之类的应用程序外,我还想上传一些配置文件(例如,为 Clojure 开发配置 emacs)。可悲的是,Vagrant 的文档没有提供有关如何执行此操作的线索。我想我必须将配置文件放入共享文件夹,然后将它们从来宾计算机上的共享文件夹复制到所需位置?

files provisioning upload vagrant

3
推荐指数
1
解决办法
4913
查看次数

与 vagrant 一起使用时无法启动 postgresql

尝试在 Vagrant 管理的 Virtualbox VM 上启动 postgresql 我有以下错误:

LOG:  could not link file "pg_xlog/xlogtemp.29" to "pg_xlog/000000010000000000000001" (initialization of log file): Operation not permitted
FATAL:  could not open file "pg_xlog/000000010000000000000001": No such file or directory
Run Code Online (Sandbox Code Playgroud)

``

postgresql vagrant

3
推荐指数
1
解决办法
3979
查看次数

Ansible 在 git clone 上挂起

我正在尝试设置一个任务,在一个流浪箱中克隆一个 repo。我已经正确设置了代理转发,在 ~/.ssh/known_hosts 中添加了 repo 服务器,并验证了我可以以 vagrant 用户身份登录并克隆 repo,而不会被要求提供凭据并且没有检查主机密钥(git clone 运行时没有挂钩)。

我的任务设置如下:

- name: Check out pname dev branch
  git: repo=ssh://git@gitlab.dev-web.ca:dev-team/pname.git
    dest=/home/vagrant/pname
    version=dev
    accept_hostkey=yes
  become: yes
  become_user: vagrant
Run Code Online (Sandbox Code Playgroud)

我的任务只是挂起,详细设置为 -vvvv 提供以下输出:

<10.210.55.82> ESTABLISH CONNECTION FOR USER: vagrant
<10.210.55.82> REMOTE_MODULE git repo=ssh:********@dev-web.ca:dev-team/project.git dest=/home/vagrant/project_folder version=dev accept_hostkey=yes
<10.210.55.82> EXEC ssh -C -tt -vvv -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o ForwardAgent=yes -o ControlMaster=auto -o ControlPersist=60s -o ControlPath="/Users/stef/.ansible/cp/ansible-ssh-%h-%p-%r" -o StrictHostKeyChecking=no -o Port=22 -o IdentityFile="/Users/stef/devbox_cp/.vagrant/machines/default/parallels/private_key" -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=vagrant -o ConnectTimeout=30 10.210.55.82 /bin/sh …
Run Code Online (Sandbox Code Playgroud)

vagrant ansible

3
推荐指数
1
解决办法
2523
查看次数

在 Ubuntu 14.04 上安装 virt-sysprep

我将 vagrant 与 vagrant-libvirt 一起使用,我想通过命令行创建一个包:

vagrant package --output ubuntu14-base.box
Run Code Online (Sandbox Code Playgroud)

我遇到了有关 virt-sysprep 不存在的错误(在系统中搜索后确认)。我尝试安装这些软件包,但没有成功:

  1. libguestfs0;
  2. libguestfs-dev;
  3. ubuntu-virt;
  4. 虚拟顶;
  5. virt-什么;
  6. ruby-guestfs

但仍然没有virt-sysprep安装。在 Googlesphere 中搜索总是会返回libguestfs-tools-cUbuntu 中不可用的内容。

libvirt vagrant

3
推荐指数
1
解决办法
3996
查看次数

无法使用 Vagrant 从主机端口通过 HTTP 访问 monit 守护进程

我想使用 monit 来监控我的 Ubuntu VM(精确到 32)上的服务,但我无法从主机(本地)机器通过 HTTP 访问 monit 守护进程。

我在 /etc/monit/monitrc 中启用了以下设置:

set httpd port 2812 and
  use address localhost
  allow localhost
  allow vagrant:vagrant_pwd
Run Code Online (Sandbox Code Playgroud)

并将虚拟机中的端口 2812 转发到 Vagrantfile 中的主机,如下所示:

config.vm.forward_port 2812, 2812
Run Code Online (Sandbox Code Playgroud)

我已经通过 ssh 进入虚拟机并运行来确认 monit 正在虚拟机上运行:

sudo /etc/init.d/monit status
Run Code Online (Sandbox Code Playgroud)

并且可以通过运行在 VM 中使用 HTTP 访问 Monit 守护进程

curl -u vagrant:vagrant localhost:2812
Run Code Online (Sandbox Code Playgroud)

但是当我在主机浏览器(firefox)上输入 localhost:2812 时,我没有得到任何响应。

关于如何使这项工作的任何想法?

ubuntu http monit vagrant

2
推荐指数
1
解决办法
3543
查看次数

Windows 重新启动时 Vagrant 保存当前状态

我正在使用 ubuntu 作为来宾操作系统运行 vagrant,但是当 Windows 重新启动时,我必须再次安装 LAMP 并配置虚拟主机以及 git、memcache 等所有应用程序。

Windows 关闭时如何使用 vagrant 保存虚拟机的状态?

谢谢

lamp git vagrant

2
推荐指数
1
解决办法
2889
查看次数