今回は Vagrant の仮想マシンで X Window System のアプリケーションを使う方法について。 これには、ローカルのマシンに X Server をインストールした上で、X11 Forwarding する必要がある。
使った環境は次のとおり。 Vagrant は ISA が x86 のマシンでしか動作しないので、ローカルが Intel Mac という状況は今後減っていくだろうけど。 ローカル環境ごとの違いは X Server のインストール方法くらいなので、特に支障はないはず。
$ sw_vers ProductName: macOS ProductVersion: 12.4 BuildVersion: 21F79 $ uname -srm Darwin 21.5.0 x86_64 $ vagrant version | head -n 1 Installed Version: 2.2.19
もくじ
下準備
ローカルのマシンには X Server をインストールする。 macOS であれば XQuartz を入れれば良い。 下記は Homebrew を使って入れる場合のやり方。
$ brew install --cask xquartz
仮想マシンをセットアップする
適当なディレクトリに Vagrant の設定ファイルを作成する。 マシンイメージは、公式の Ubuntu 22.04 LTS を使った。
$ vagrant init ubuntu/jammy64
仮想マシンを起動する前に、設定ファイルに必要なオプションを指定する。
具体的には下記を Vagrantfile
に追加する。
この設定がデフォルトの Vagrantfile
にあればコメントアウトするだけで楽なんだけど、残念ながら無い。
config.ssh.forward_x11 = true
あとは仮想マシンを起動してログインする。
$ vagrant up && vagrant ssh
X Window System のアプリケーションを使う
仮想マシンにログインしたら、X Window System が必要になるので入れる。
$ sudo apt-get update
$ sudo apt-get -y install xserver-xorg
あとは X Window System のアプリケーションを使うだけ。 ここでは例として xeyes(1) を使う。
$ sudo apt-get -y install x11-apps
$ xeyes
うまくいけばアプリケーションのウィンドウが表示されるはず。
いじょう。