2020.08.20 追記
今となっては素直にWSL2をインストールしたほうがあらゆる面で有利です。
以前
にてManjaro Linuxをインストールして運用してきたが、 思いの外Hyper-V環境との相性が悪かったため、おとなしくUbuntu系のディストロを入れ直すことにした。 また、開発のためにDockerを使っていきたいので、合わせてインストールした。
Lubuntuのインストール
LubuntuはUbuntu系ディストロの中でも特に軽量なため、今回選択した。
Hyper-Vの構成は前回Manjaro Linuxをインストールしたときと同じ構成にした。
ダウンロードページ から最新版のDesktop 64bitを選んでisoをダウンロードする。
SCSIコントローラーにDVDドライブを追加し、 仮想ドライブにダウンロードしたisoをセットして起動する。 そのままデスクトップ環境が立ち上がるため、デスクトップにあるCDアイコン(Intall Lubuntu xx.xx LTS)を起動してインストーラを起動する。
基本的にはインストーラの指示に従って進めれば良い。
初期設定
インストールが終わったら、いくつかセットアップする。
aptリポジトリの更新
メインメニューから [設定] > [Software Sources] とたどり、 [Ubuntu Software]タブのDownloadable from the InternetのDownload from: を「日本のサーバ」に変更する。
その後、パッケージのアップデートを行う。
$ sudo apt update && sudo apt upgrade
ディレクトリ名の変更
日本語が使われていると不便なため英語に変更する。
$ sudo apt install xdg-user-dirs-gtk
$ LANG=C xdg-user-dirs-gtk-update
Hyper-V拡張セッション用のツールのインストール
Hyper-Vで使う場合、XRDPでつないだほうが操作性がいいため、 Hyper-V拡張セッション用のツールをgithub/Microsoftからダウンロードしてインストールする。
$ apt install git $ git clone https://github.com/Microsoft/linux-vm-tools.git $ cd linux-vm-tools/ubuntu/18.04 $ chmod +x install.sh $ sudo ./install.sh
RXDPサービスが起動しているか確認する。
$ sudo systemctl status rxdp
正しく起動していないようであればiniファイルを修正する。
$ sudo vi /etc/xrdp/xrdp.ini
- port=3389 + port=vsock://-1:3389 ... - use_vsock=true + use_vsock=false
サービスを有効化する。
$ sudo systemctl enable xrdp
Linuxを再起動する。
次に、Windows側からこの仮想マシンに対してHyper-V側の拡張セッションを有効にする。 PowerShell(管理者)を起動して、下記を入力する。
> Set-VM -VMName '<VMの名前>' -EnhancedSessionTransportType HvSocket
SSH Server
使用に際してデスクトップ環境が不要な場合も多いので、SSHサーバも入れておく。
$ sudo apt install openssh-server
Dockerのインストール
基本的には 公式のマニュアル に沿って進めていけば良い。
info | (2020.05.10追記) add-apt-repositoryで追加するときに
| 最新版のLubuntu(20.04 LTS)では、aptにリポジトリを追加する際に、
|
| $ lsb_release -cs
| ````
| をすると `focal` が返ってきてしまうが、download.docker.comには存在しないので、
| 下記のように直接 `bionic` を指定する必要がある。
|
| $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
| ```
docker-composeのインストール
aptでは古いバージョン(1.17.1)のものしかないので、githubから直接リリース版をダウンロードして配置する。
$ sudo curl -L https://github.com/docker/compose/releases/download/1.25.1/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose $ sudo chmod +x /usr/local/bin/docker-compose
dockerをsudoなしで使えるようにする
dockerのgroupを作ってそこにログイン中のユーザをを追加するとsudoなしで使える。
$ sudo groupadd docker $ sudo gpasswd -a $USER docker $ sudo systemctl restart docker
ここまでやったらLinuxを再起動する。