SVX日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|

2023-08-11(Fri) コンテナ上にリモートデスクトップ環境の構築に成功

  だいぶ間が開いてしまったが、東北から戻ってから、自宅の外壁工事が始まったり、ロードスターを外の駐車場に退避しておいたらブツけられたり、筋トレを緩めたせいなのか体が緩んだり、なんやかんやで、どうも気分的に不安定になっていたりする。

  男性にも更年期があるとかで、そのせいなのか、自宅やクルマというテリトリが侵され気味のせいなのか、仕事の環境が微妙なせいなのか、暑い中を動きすぎて塩分が足りてないのか、どうも気分は曇り空である。時々、晴れ間が覗くような、そうでもないような。

  何かに取り組んでいないと気がすまない性格なのに、どうも取り組む気が起きず、ダラダラとゲームしたりしてしまう。ゲームが悪いわけではないのだが、そういう気分の時にゲームすると罪悪感のようなものを感じてしまって、ますます気が滅入る。我ながら面倒くさい性格とは思うのだが。

  そんな日々の中、今日はすっかり存在を忘れていた休日なのだが、なんとなく気分に晴れ間が覗いたからか、以前から作ってみたいと思いつつ、ディスクの容量などの都合で断念していた「リモートデスクトップコンテナ」の構築を始めてみた。

  自分はFedoraでMATEの人なのだが、コンテナのビルドで「MATEデスクトップ」をインストールしようとすると、なぜかディスクの容量制限にかかって失敗してしまうのだ。そんなら、ということで、姑息ながら小分けインストールしたみたところ、そんな方法でインストールに成功してしまった。

  突き詰めていくと「MATE」と「MATE Desktop」に分けるだけで十分なようだ。何度かつながらない状況をトラブルシュートしながらアレコレした程度で、それほど苦労することもなく、アッサリと「リモートデスクトップ接続(RDP)」からの接続に成功してしまった。

  画像の説明

  以下にDocker関連ファイルを示す。

 # cat Dockerfile
 FROM fedora:38
 
 LABEL maintainer="Furutanian <furutanian@gmail.com>"
 
 ARG http_proxy
 ARG https_proxy
 
 RUN set -x \
     && dnf groupinstall -y 'MATE' \
     && dnf groupinstall -y 'MATE Desktop' \
     && dnf install -y xrdp \
     && rpm -e thunderbird thunderbird-librnp-rnp \
     && rm -rf /var/cache/dnf/* \
     && dnf clean all
 
 RUN set -x \
     && ln -sv /usr/lib/systemd/system/multi-user.target /etc/systemd/system/default.target \
     && systemctl enable xrdp \
     && systemctl disable firewalld
 
 EXPOSE 3389
 
 ENTRYPOINT ["/sbin/init"]
 # cat docker-compose.yml
 version: '3'
 services:
     crd:
         image:
             docker.io/furutanian/crd
         container_name:
             crd-alpha
         build:
             context:
                 .
 #           args:
 #               http_proxy: http://user_abc:password@proxy.example.com:8080/
 #               https_proxy: http://user_abc:password@proxy.example.com:8080/
         ports:
             - "13389:3389"
         restart:
             always
         stop_grace_period:
             1s
         privileged:
             true
         environment:
             TZ: Asia/Tokyo
 #           http_proxy: http://user_abc:password@proxy.example.com:8080/
 #           https_proxy: http://user_abc:password@proxy.example.com:8080/
         volumes:
             - pv:/home
 
 volumes:
     pv:
         driver: local
 # データを永続的に保持する領域として
 # mkdir -pv pv しておくこと
         driver_opts:
             type: none
             o: bind
             device: $PWD/pv

  一応、/homeはPVに出してあるが、コンテナなので再起動すると、良くも悪くもほとんどの設定がブッ飛んでしまうし、現状、コンテナを上げる都度、ユーザを作らなければならないし、英語環境だし、キーボードはヘンだし、タイムゾーンはUTCだしで、まだ詰めは甘い。が、そのへんの直しとか、愛用のメーラであるMAVEの導入とかは、このコンテナを継承する形にするべきで、これはこれで完成形かな。

  しかし、これが完全に実用になったならば、常に最新のFedoraに乗り換え続けることも容易になるな。これは、Windowsを捨てFedoraに移行して以来のデスクトップ環境の革命かもしれん。