167

私の会社の開発環境は、VirtualBox で実行される仮想マシンに基づいています。さらに一歩進んで、Vagrant の機能を使用してマシンの説明をテキスト ファイルに格納し、そのテキスト ファイルに基づいてそのマシンを「起動」できるようにしたいと考えています。これを puppet と組み合わせると、VM にインストールされているソフトウェアのバージョンがそれぞれ異なるという問題が解決されます。

ただし、Vagrant はホスト上での開発に非常に重点を置いているようで、マシンをバックグラウンドに置いています。マシン内に開発環境を用意する必要があるため、完全な GUI が必要になるため、「vagrant up」と入力すると、完全なデスクトップ環境 (XFCE、KDE...) を備えたマシンが表示されるはずです。

これまでのところ、Xubuntu ディストリビューションから「ベース」ボックスを作成することができました。しかし、「vagrant up」と入力すると、デスクトップが表示され、適切にログインできますが、Vagrant は「マシンが起動するのを待っています。これには数分かかる場合があります...」というメッセージでフリーズします。しばらくすると、タイムアウトにより Vagrant がクラッシュします。そのため、共有フォルダーは作成されず、パッケージ プロビジョナー -puppet- も実行されません。

vagrant を使用して完全な GUI を備えた仮想マシンを作成する方法は?

4

11 に答える 11

168

基本的に3つのステップでこれを機能させました。からのアドバイスaskubuntu.comは私にはうまくいきませんでしたので、この簡略化されたバージョンを試してください:

  1. 基本的な Ubuntu イメージを機能させます。起動できるはずですvagrant ssh
  2. 次に、デフォルトでオフになっている VirtualBox 表示を有効にします。VM を停止し、次の行のコメントを外しますVagrantfile
    config.vm.provider :virtualbox do |vb|
      vb.gui = true
    終わり
  3. VM を起動し、新しい表示ウィンドウを確認します。あとは、インストールして起動するだけですxfce4。使用vagrant sshして:
    sudo apt-get install xfce4
    須藤startxfce4&
    

この Ubuntu 環境を初めて実行する場合は、xfce4 をインストールする前に次のコマンドを実行する必要があります。

sudo apt-get アップデート

それだけですxfce4。セッションに着陸する必要があります。

更新:エクスペリエンスを向上させるために、次の改善をお勧めします。

  1. root として GUI を起動しないでください。あなたは本当にユーザーであり続けたいと思っていvagrantます。これを行うには、だれでも GUI を開始できるようにする必要がありsudo vim /etc/X11/Xwrapper.configますallowed_users=anybody
  2. 次に、 GUI を起動する前にVirtualBox ゲスト ツールをインストールします。これにより、健全な画面解像度、統合されたマウスなどが得られます。
    $ sudo apt-get install -y xfce4 virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11
    $ sudo VBoxClient-all
  3. vagrantここでのみ、ユーザーとして GUI を起動する必要があります$ startxfce4&

更新 2:今日これを試しましたが、VBoxClient-allスクリプトが常にインストールされるとは限りません。欠落している場合は、同等のものに置き換えることができます。

sudo VBoxClient --クリップボード
sudo VBoxClient --draganddrop
sudo VBoxClient --display
sudo VBoxClient --checkhostversion
sudo VBoxClient --シームレス
于 2013-11-16T22:22:31.110 に答える
11

私の2セント

Vagrant.configure("2") do |config|
  # ... other configuration

  config.vm.provision "shell" do |s|
    s.inline = "apt-get install lubuntu-desktop -y"
  end
end
  • 独自の vagrant ベース ボックスを構築する場合は、必ずベース ボックスのパッケージ化手順に従うか、packer (または veewee) などのツールを使用してビルドを自動化することを検討してください。
于 2013-09-18T22:28:40.997 に答える
7

私はubuntuデスクトップイメージを使用しています。仮想ボックスプロバイダーを使用して、Windows上の2つのモニターでうまく機能します。

Vagrant.configure(2) do |config|
  config.vm.box = "box-cutter/ubuntu1404-desktop"

  config.ssh.forward_agent = true

  config.vm.network "forwarded_port", guest: 8080, host: 8080
  config.vm.network "forwarded_port", guest: 3000, host: 3000


  config.vm.synced_folder "../../git", "/home/vagrant/git"

  config.vm.provider "virtualbox" do |vb|
    vb.gui = true
    vb.customize ["modifyvm", :id, "--monitorcount", "2"]
    vb.memory = "2048"
  end
end
于 2016-03-25T10:44:13.773 に答える
2

HTTP 404 を回避するために、Nik の回答に少しパッチを当てました。

Vagrant.configure(2) do |config|
  # Ubuntu 15.10
  config.vm.box = "bento/ubuntu-18.04"

  config.vm.provider "virtualbox" do |vb|
    # Display the VirtualBox GUI when booting the machine
    vb.gui = true
  end

  # Install xfce and virtualbox additions
  config.vm.provision "shell", inline: "sudo apt-get update"
  config.vm.provision "shell", inline: "sudo apt-get install -y xfce4 virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11"
  # Permit anyone to start the GUI
  config.vm.provision "shell", inline: "sudo sed -i 's/allowed_users=.*$/allowed_users=anybody/' /etc/X11/Xwrapper.config"
end
于 2019-08-15T16:55:27.067 に答える
0

上記の billmalarky のコメントに追加すると、fedora 20 では、xfce を開始する前に次のことが必要でした。

  • VirtualBox-guest.rpm をインストールします (rpmfusion リポジトリから入手可能)
  • yum グループ マーク インストール 'graphical_environment'
  • yum groupinstall "Xfce"
  • yum install xorg-x11-drivers

コードは次のとおりです。

config.vm.provision "shell", inline: <<-SHELL        
    #Install Virtual Box guest additions from rpmfusion repos
    cd /vagrant
    yum install -y rpmfusion-free-release-20.noarch.rpm 
    yum install -y rpmfusion-nonfree-release-20.noarch.rpm
    yum update -y
    yum install -y VirtualBox-guest

    #Add XFCE desktop to fedora server
    yum groups mark install 'graphical_environment'
    yum groupinstall -y "Xfce"
    yum install -y xorg-x11-drivers   
SHELL
于 2015-08-06T13:31:40.547 に答える