Docker による Ubuntu の LXDE/LXQt デスクトップ環境です。 リモートデスクトップとして RDP(xrdp)を使用します。
日本語環境(ibus-mozc による日本語入力可能)かつ、-u
による一般ユーザ起動においてもsudo
コマンドが使用可能です。
24.04-xrdp_ja
,noble-xrdp_ja
,latest-xrdp
,latest
: Ubuntu24.04 ベース LXQt (xrdp/Dockerfile.ubuntu24.04)24.04-xrdp-slim_ja
,noble-xrdp-slim_ja
: サイズを軽量化した Ubuntu24.04 ベース LXQt (xrdp/Dockerfile.ubuntu24.04)24.04-xrdp-audio_ja
,noble-xrdp-audio_ja
: 音声転送可能な Ubuntu24.04 ベース LXQt (xrdp/Dockerfile.ubuntu24.04_audio)22.04-xrdp_ja
,jammy-xrdp_ja
: Ubuntu22.04 ベース (xrdp/Dockerfile.ubuntu22.04)22.04-xrdp-slim_ja
,jammy-xrdp-slim_ja
: サイズを軽量化した Ubuntu22.04 ベース (xrdp/Dockerfile.ubuntu22.04)22.04-xrdp-pulseaudio_ja
,jammy-xrdp-pulseaudio_ja
: 音声転送可能な Ubuntu22.04 ベース (xrdp/Dockerfile.ubuntu22.04_pulseaudio)20.04-xrdp_ja
,focal-xrdp_ja
: Ubuntu20.04 ベース (xrdp/Dockerfile.ubuntu20.04)20.04-xrdp-slim_ja
,focal-xrdp-slim_ja
: サイズを軽量化した Ubuntu20.04 ベース (xrdp/Dockerfile.ubuntu20.04)20.04-xrdp-pulseaudio_ja
,focal-xrdp-pulseaudio_ja
: 音声転送可能な Ubuntu20.04 ベース (xrdp/Dockerfile.ubuntu20.04_pulseaudio)ubuntu18.04_ja
: Ubuntu18.04 ベース (xrdp/Dockerfile.ubuntu18.04)ubuntu18.04-pulseaudio_ja
: 音声転送可能な Ubuntu18.04 ベース (xrdp/Dockerfile.ubuntu18.04_pulseaudio)ubuntu16.04_ja
: Ubuntu16.04 ベース (xrdp/Dockerfile.ubuntu16.04)
Docker コンテナの起動方法は以下の通りです。
$ docker run --rm -it \
-p 3389:3389 \
-u $(id -u):$(id -g) \
-e USER=yama07 \
-e PASSWD=mypasswd \
yama07/docker-ubuntu-lxde:24.04-xrdp_ja
オプションは以下の通りです。
-p port:3389
クライアントから接続されるポートをport
に設定してください。-u user:group
コンテナを起動する UID をuser
に、GID をgroup
に設定してください。 指定しない場合は、root ユーザ(UID=0,GID=0)として起動します。 なお、root ユーザとして起動した場合は、日本語入力(mozc)が利用できません。-e USER=loginUser
RDP によるログインユーザをloginUser
に設定してください。 指定しない場合は、"developer"となります。ただし、root ユーザとしてコンテナを起動した際は"root"となります。-e PASSWD=loginPasswd
RDP によるログインパスワードをloginPasswd
に設定してください。 指定しない場合は、"xrdppasswd"となります。
接続後にログイン画面やデスクトップ画面が表示されない場合、--privileged
オプションを付けることで成功する可能性があります。
コンテナ内のデスクトップ環境において、ほとんどの個人設定はホームディレクトリに保存されるため、 -v ${HOME}/container_home:/home/yama07
のようにホームディレクトリをマウントするオプションを追加すれば、コンテナを停止&起動しても個人の設定が維持されます。
ただし、マウントするディレクトリを起動前に作成しておかないと、Permission エラーが発生するため注意してください。
docker run 後に、リモートデスクトップアプリケーション(Mac の場合は「Microsoft Remote Desktop」、Linux の場合は「xfreerdp」や「Remmina」等)で接続してください。
この際、接続先は(Docker ホストの IP):(-p
オプションで指定したport
)、ユーザは-e USER
で指定したloginUser
、パスワードは-e PASSWD
で指定したloginPasswd
を指定してください。
この Docker イメージはあまりパッケージをインストールしていないため、そのままでは利用範囲が限られます。 そのため、リポジトリ内の Dockerfile を参考にして独自の Dockerfile を作成するか、Docker Hub に公開している Docker イメージをベースイメージとして利用してカスタマイズすることをお勧めします。
カスタマイズしたイメージを作成するサンプルがこちらにありますので、ご参考にしてください。
Docker イメージのビルド方法は以下の通りです。 (イメージの名前やタグは適宜変更してください。)
$ git clone /~https://github.com/yama07/docker-ubuntu-lxde.git
$ docker build \
-t lxde_xrdp:ubuntu24.04_ja \
-f ./xrdp/Dockerfile.ubuntu24.04 \
./xrdp
## Slim image
$ docker build \
--build-arg ADDITIONAL_APT_GET_OPTS=--no-install-recommends \
-t lxde_xrdp:ubuntu24.04-slim_ja \
-f ./xrdp/Dockerfile.ubuntu24.04 \
./xrdp