Mac上のDocker DesktopでCentOSのイメージを使って、GUIのツールを実行しました。
このときにホストのipアドレスを指定しますが、自動的に指定することはできないのでしょうか。
動作環境:
MacOS 10.15.7
Docker desktop 3.0.3
事例1
Docker上でGUIのツールを使うときに、R Studioの場合は、
# rocker/tidyverseをpull sudo docker pull rocker/tidyverse # イメージを起動 sudo docker run -p 8787:8787 -v [host-dir]:[mp] -e PASSWORD=[password] rocker/tidyverse # ブラウザでlocalhost:8787にアクセスする
上記でDockerで起動した、R Studioが使用できました。
今回の方法
今回は他のGUIツールを動かしたかったので、まずテスト的にxeyesを
動かしてみました。
すでにインストールしてあるXQuartzを使用して、下記のように実行しました。
~ $ ifconfig |grep 192|awk '{print $2}' 192.168.1.44 ~ $ docker run -e DISPLAY="192.168.1.44:0" -it --name CentOS_xeyes b5 [root@e327a9da887e /]# yum install -y xeyes --quiet [root@e327a9da887e /]# xeyes
これで、目玉が表示されて目的は達成できましたが、DHCP環境で使う時は
ipアドレスが変更になったら、コンテナは再作成しなければならないかと
思いましたが、起動後に環境変数を変更すればいいのだとわかりました。
ではありますが、自動化できたらいいかと考えたのですが、通常はどのように
するものなのでしょうか。?
# 試しに環境変数を変えてみる [root@e327a9da887e /]# DISPLAY="192.168.1.43:0" [root@e327a9da887e /]# xeyes # <=== 起動しない ^C # ホストのipアドレスを指定し直す [root@e327a9da887e /]# DISPLAY="192.168.1.44:0" [root@e327a9da887e /]# xeyes # <=== 起動した
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/28 07:23