DockerでUbuntuの公式イメージを使用してデスクトップを表示するまでの手順を作成しました。
今回のUbuntuデスクトップはUbuntu標準のデスクトップでは動かなかったので、オープンソースの「lxde」というデスクトップを使用して、リモートデスクトップできるまでを実施します。
「Docker」Ubuntu公式イメージでデスクトップ構築までの設定手順
以下では、Dockerイメージダウンロードから起動、デスクトップインストールまでの流れとなります。
Docker公式イメージこちらです。
https://hub.docker.com/_/ubuntu
「Ubuntu」イメージダウンロード
以下コマンドで「Ubuntu」のイメージをダウンロードします。
$ docker pull ubuntu
イメージの最新バージョン(latest)がダウンロードされたことが確認でいます。
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu latest aee70e576257 8 days ago 65.7MB
「Ubuntu」コンテナ起動
次に「Ubuntu」コンテナを起動します。
コンテナ名は「my-ubuntu」で、リモでができるようにポート「3389」でアクセスできるようにします。
$ docker run -it -d --name my-ubuntu -p 3389:3389 ubuntu:latest d7d2fcf0d58433256d3f8fa2cbe5d05398eadf59feb5c60e6cf155c1e4af943a
以下コマンドでコンテナが起動したことが確認できます。
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d7d2fcf0d584 ubuntu:latest "/bin/bash" 5 seconds ago Up 2 seconds 0.0.0.0:3389->3389/tcp my-ubuntu
「Ubuntu」コンテナでリモートデスクトップ環境を構築
「Ubuntu」コンテナが起動できれば、次にデスクトップ環境を構築していきます。
以下コマンドでコンテナにアクセスします。
$ docker exec -it my-ubuntu /bin/bash root@d7d2fcf0d584:/#
「Ubuntu」を最新版にアップデートします。
root@d7d2fcf0d584:/# apt -y update root@d7d2fcf0d584:/# apt -y upgrade
「xrdp」リモートデスクトッププロトコルをインストール
「xrdp」はRDPプロトコルが使用できるオープンソースとなります。
インストール時にタイムゾーンの設定を聞かれるので以下を設定しておきます。(インストールは日本で設定)
- タイムゾーン設定(地域):「6. Asia 」
- タイムゾーン設定(都市):「79. Tokyo」
apt-get install xrdp ------中略------ Please select the geographic area in which you live. Subsequent configuration questions will narrow this down by presenting a list of cities, representing the time zones in which they are located. 1. Africa 4. Australia 7. Atlantic Ocean 10. Pacific Ocean 13. None of the above 2. America 5. Arctic Ocean 8. Europe 11. System V timezones 3. Antarctica 6. Asia 9. Indian Ocean 12. US Geographic area: 6 Please select the city or region corresponding to your time zone. 1. Aden 14. Beirut 27. Gaza 40. Karachi 53. Muscat 66. Riyadh 79. Tokyo 2. Almaty 15. Bishkek 28. Harbin 41. Kashgar 54. Nicosia 67. Sakhalin 80. Tomsk 3. Amman 16. Brunei 29. Hebron 42. Katmandu 55. Novokuznetsk 68. Samarkand 81. Ujung Pandang 4. Anadyr 17. Chita 30. Ho Chi Minh City 43. Khandyga 56. Novosibirsk 69. Seoul 82. Ulaanbaatar 5. Aqtau 18. Choibalsan 31. Hong Kong 44. Kolkata 57. Omsk 70. Shanghai 83. Urumqi 6. Aqtobe 19. Chongqing 32. Hovd 45. Krasnoyarsk 58. Oral 71. Singapore 84. Ust-Nera 7. Ashgabat 20. Colombo 33. Irkutsk 46. Kuala Lumpur 59. Phnom Penh 72. Srednekolymsk 85. Vientiane 8. Atyrau 21. Damascus 34. Istanbul 47. Kuching 60. Pontianak 73. Taipei 86. Vladivostok 9. Baghdad 22. Dhaka 35. Jakarta 48. Kuwait 61. Pyongyang 74. Tashkent 87. Yakutsk 10. Bahrain 23. Dili 36. Jayapura 49. Macau 62. Qatar 75. Tbilisi 88. Yangon 11. Baku 24. Dubai 37. Jerusalem 50. Magadan 63. Qostanay 76. Tehran 89. Yekaterinburg 12. Bangkok 25. Dushanbe 38. Kabul 51. Makassar 64. Qyzylorda 77. Tel Aviv 90. Yerevan 13. Barnaul 26. Famagusta 39. Kamchatka 52. Manila 65. Rangoon 78. Thimphu Time zone: 79 Current default time zone: 'Asia/Tokyo' ------中略------
オープンソースのデスクトップ環境「lxde」インストール
次にUbuntuデスクトップ環境でオープンソースとして提供している「lxde」をインストールします。
ディスプレイマネージャーをどれにするか聞かれるのでとりあえずデフォルトの「gdm3」で設定します。
root@d7d2fcf0d584:/# apt-get install lxde ------中略------ ------------------- A display manager is a program that provides graphical login capabilities for the X Window System. Only one display manager can manage a given X server, but multiple display manager packages are installed. Please select which display manager should run by default. Multiple display managers can run simultaneously if they are configured to manage different servers; to achieve this, configure the display managers accordingly, edit each of their init scripts in /etc/init.d, and disable the check for a default display manager. 1. gdm3 2. lightdm Default display manager: 1
Ubuntuデスクトップのセッション設定
上記でインストールが完了したらデスクトップのセッション設定を以下で実行します。
root@d7d2fcf0d584:/# cd /etc/xdg/ root@d7d2fcf0d584:/# echo lxsession > ~/.xsession
「xrdp」サービスの起動
リモートデスクトップができるように「xrdp」のサービスを以下コマンドで起動します。
正常に起動すると「OK」となります。
失敗した場合は「restart」コマンドを実行しましょう。
root@d7d2fcf0d584:/# /etc/init.d/xrdp start * Starting Remote Desktop Protocol server [ OK ]
Ubuntuデスクトップアクセスパスワード設定
Ubuntuの初期状態はrootパスワードがない状態となっています。
以下で、rootパスワードを設定します。
$ docker exec -it my-ubuntu /bin/bash root@d7d2fcf0d584:/# passwd New password: Retype new password: passwd: password updated successfully
上記設定後、「exit」でコンテナからログアウトします。
Ubuntuデスクトップへアクセス実施
今回はMacPC M1チップでのアクセスとなります。
アプリで「Microsoft Remote Desktop」をインストールし起動します。
以下のように「localhost:3389」にアクセスします。
接続時にユーザ、パスワードを聞かれるので以下を入力します。
- ユーザ:root
- パスワード:設定したパスワード
正常にアクセスできるとUbuntuデスクトップが表示されます。
公式Ubuntuイメージでのデスクトップ設定までの手順は以上となります。
Dockerを構築するならVPSがおすすめです。
エンジニアのオンライン学習
ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。
おすすめオンライン教材 | |
自宅で学習ができるオンラインスクール | |
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメントを残す