サイトアイコン たーちゃんの「ゼロよりはいくらかましな」

【docker】コンテナのGUIアプリを使う

dockerでイメージ内のGUIアプリが使えるってことを、

割と最近知ったので、macでやってみたことのメモ。

 

 

dockerはOSのネイティブな部分は、

動作しているホストOSのものを利用するので、

GUIアプリを使うためにはディスプレイへのIFが

あればよいってことみたい。

 

 

 

 

GUIアプリを起動するまでの手順

xquartzインストール

xquartz(X11)はmac向けにウィンドウシステムを操作するための

プロトコルを提供するもの。(wikipedia

 

インストールはbrewでOK。

brew install xquartz

 

インストールが完了したら、

open -a XQuartz

で、起動。

大きなXのアイコンが出て起動したら、

XQuartz > 環境設定 > セキュリティ > ネットワーク・クライアントからの接続を許可

にチェック

 

ここで1回ログアウト

ログアウトしないとxquartzが設定するDISPLAY環境変数が設定されないので注意!

 

 

IPアドレスxhost登録

xhostコマンドはX11が接続を許可するホストの登録、削除を行うコマンド。

IP=$(ifconfig en0 | grep inet | awk '$1=="inet" {print $2}')
echo $IP

/usr/X11/bin/xhost + $IP

 

先ほどのDISPLAY環境変数は設定されていないと、

xhostのコマンドで以下のようなエラーになる。

/usr/X11/bin/xhost:  unable to open display ""

 

 

firefoxイメージ起動

最後にdocker runしてみましょー。

export PATH=/usr/X11/bin:$PATH
docker run -d --name firefox -e DISPLAY=$IP:0 -v /tmp/.X11-unix:/tmp/.X11-unix jess/firefox

 

うまく起動すると、firefoxが立ち上がってくるはず。

ネット検索もそのままできますね!

 

 

 


にほんブログ村


人気ブログランキング

モバイルバージョンを終了