LoginSignup
14
16

More than 5 years have passed since last update.

Dockerに構築したLinuxにリモートデスクトップで接続する

Last updated at Posted at 2018-06-03
前提

Windows10 Pro

1. Windows側の設定

1.コントールパネル→アプリと機能からHyper-Vを有効にする。

2.Docker for Windowsをダウンロード、インストールする。

3.Window Power Shell を管理者権限で起動

4.docker pull ubuntuコマンドでubuntuのイメージを取得

5.以下のコマンドでubuntuを起動

docker run --name ubuntu-dev -it ubuntu /bin/bash
2. Linux側の設定

6.パッケージリストの最新化

apt-get update
apt-get upgrade

7.xrdp(※)をインストール

apt-get install xrdp

※WindowsからLinuxにリモートデスクトップで繋げるソフト

8.lxde(※)をインストール

apt-get install lxde

※Linuxのデスクトップ環境

9.rootパスワードの変更
passwd

10.vimのインストール

apt-get install vim

11.最新版のxrdpをビルドするツールをインストール

apt-get install build-essential devscripts

12.Buildスクリプトソース取得

cd ~
mkdir build
cd build
dget -u https://launchpad.net/ubuntu/+archive/primary/+files/xrdp_0.9.1-9.dsc

13.Build準備

apt-get install autoconf automake debhelper libfuse-dev libjpeg-dev libopus-dev libpam0g-dev libssl-dev libtool libx11-dev libxfixes-dev libxrandr-dev nasm openssl pkg-config systemd x11-utils xserver-xorg-core xserver-xorg-dev  libfuse-dev ssl-cert

14.以下のファイルをviで作成
vi /usr/include/X11/fonts/fontutil.h

#ifndef _FONTUTIL_H_
#define _FONTUTIL_H_
#include <X11/fonts/FSproto.h>
extern int FontCouldBeTerminal(FontInfoPtr);
extern int CheckFSFormat(fsBitmapFormat, fsBitmapFormatMask, int *, int *,
             int *, int *, int *);
extern void FontComputeInfoAccelerators(FontInfoPtr);
extern void GetGlyphs ( FontPtr font, unsigned long count,
            unsigned char *chars, FontEncoding fontEncoding,
            unsigned long *glyphcount, CharInfoPtr *glyphs );
extern void QueryGlyphExtents ( FontPtr pFont, CharInfoPtr *charinfo,
                unsigned long count, ExtentInfoRec *info );
extern Bool QueryTextExtents ( FontPtr pFont, unsigned long count,
                   unsigned char *chars, ExtentInfoRec *info );
extern Bool ParseGlyphCachingMode ( char *str );
extern void InitGlyphCaching ( void );
extern void SetGlyphCachingMode ( int newmode );
extern int add_range ( fsRange *newrange, int *nranges, fsRange **range,
               Bool charset_subset );
#endif /* _FONTUTIL_H_ */

15.debian/controlをviで修正

cd xrdp-0.9.1
vi debian/control

修正前
automake (>= 1.6),
debhelper (>= 10),
修正後
automake (>= 1.1),
debhelper (>= 9.2),

16.debian/rulesをviで修正

vi debian/rules

--enable-ipv6 の行を削除

17.パッケージの作成
「xrdp-0.9.1」ディレクトリで下記コマンドを実行

dpkg-buildpackage -r -uc -b

18.buildディレクトリにdebファイルが2つ生成されるため、インストール

dpkg -i xorgxrdp_0.9.1-9_amd64.deb
dpkg -i xrdp_0.9.1-9_amd64.deb

19.デスクトップセッションの設定

cd ~
echo lxsession -s LXDE -e LXDE > ~/.xsession

20.日本語化モジュールのインストール

apt-get install ibus-mozc
apt-get install language-pack-ja-base language-pack-ja

update-locale LANG=ja_JP.UTF-8 LANGUAGE=ja_JP:ja
export LANG=ja_JP.UTF-8
export LC_ALL=ja_JP.UTF-8
export LC_CTYPE=ja_JP.UTF-8
source /etc/default/locale

apt-get install unifont
apt-get install synaptic
apt-get install scim-anthy
apt-get install fcitx-anthy

21.ubuntoをexitで終了

3. Windows側の設定

22.デスクトップ環境を構築したubuntuコンテナをcommit

docker commit ubuntu-dev ubuntu-desktop

23.ポート転送して起動

docker run --name ubuntu-desktop -p 13389:3389 -it ubuntu-desktop /bin/bash
4. Linux側の設定

24.xrdpの起動

/etc/init.d/xrdp stop
/etc/init.d/xrdp start
5. Windows側の設定

25.PowerShellを別途起動して、以下のコマンドでIPアドレスを確認

docker inspect --format '{{ .NetworkSettings.IPAddress }}'  ubuntu-desktop

26.[リモートデスクトップ接続]でIPアドレスを指定して接続
リモートデスクトップのアドレスに、「IPアドレス:13389」と入力

27.rootでログイン

Ubuntuの初期設定

以上

14
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
16