実験環境
- ディスクトップ Mac OS からターミナルから ssh 接続 WEBブラウザはSafari
- サーバー mini PC に ubuntu 22.04 server をインストール IP 192.168.0.20
LXD のインストール
ubuntu22.04 serverは標準で LXD (version 5.02)はインストールされていました。
LXD UI 準標準
LXD の初期設定の項目で LXD UI を使用するには、
Would you like the LXD server to be available over the network? (yes/no) [default=no]: yes
にすると以下の項目が出てきます。
Address to bind LXD to (not including port) [default=all]:
Port to bind LXD to [default=8443]:
ここはデフォルトで良いと思います。
サーバーの IP アドレスとポート(port)をWEBブラウザで開けば良い。
$sudo lxd init の最後の質問
Would you like a YAML “lxd init” preseed to be printed? (yes/no) [default=no]: yes
にすると、下のように Config ファイルが表示されるので、設定の確認をします。
スナップでUIを有効にします。
LXD Web UIは、LXDサーバーとインスタンスを管理するためのグラフィカルインターフェイスを提供します。現在、初期段階にあり、まだ完全な機能を提供していませんが、最終的にはLXDコマンドラインクライアントに代わるものになります。
LXD Web UIにアクセスするには、次の手順を実行します。
WEBブラウザの設定
https://ホストのIPアドレス:8443
ex) https://192.168.0.20:8443(ここはhttpではなくhttpsでアクセスすること)
WEBブラウザにページの表示できないとかメッセージがでるが、無視して表示させる。
証明書 Create a new certificate
LXD-UIを使うためには2種類の証明書を作成しなくてはなりません。
- LXD-UIがLXD本体を操作するために必要な証明書
(PEM:Privacy Encanced Mail形式のcrtファイル) - LXD-UIのWeb UIにログインするための証明書
(PFX:Personal Information Exchangeファイル)
ローカルPC(ここではMacOS)のWEBブラウザからアクセスすると
Canonical LXD Login 画面が表示される。

Setup LXD UI
上)Create a new certificate をクリックすると Setup LXC UI が表示される。
下)
- [Generate] をクリックすると、2つの証明書(ログイン用PFX・本体用PEM )が発行されますが、
- Trust
lxd-ui.crt のファイルをサーバーに読み込んで
lxc config trust add (lxd-ui.crt ファイル)
を実行してください。 - Import
lxd-ui.pfxファイル(証明書)を生成するのですが、OSやブラウザによって異なるので、ここで選択してください。

Setup LXD UI 番号順に設定を行うだけで良い。
- Generate ボタンをクリック
- Trust lxd-ui.crt ファイルを生成してブラウザでダウンロードする。
lxd-ui.crt ファイル(証明書)をFTPやSCP※でサーバーに転送・コピーして$ lxc config trust add lxd-ui.crt
- Mac アプリのキーチェンアクセスを起動してダウンロードした lxd-ui.pfx をドラッグ&ドロップする。
認証局を登録するときにパスワードを設定する。後から数回入力するので、このパスワードは忘れないように。
※MacOSからubuntu serverにファイルを転送する方法は、今回、 scp コマンドを使用した。
MacOSのターミナルから
% sudo scp /Users/Usrname/Downloads/lxd-ui.crt [サーバーのuser名]@[サーバーのアドレス]:[サーバーのディレクトリ]
ex)
% sudo scp /Users/Usrname/Downloads/lxd-ui.crt pop@192.168.0.20:/home/pop/
サーバーのユーザーディレクトリ(自分の場合 ‘pop’)にコピー(転送)した。
ユーザーディレクトに lxd-ui.crt が存在しているか確認して、
$ lxc config trust add lxd-ui.crt
Add existing certificate

Token発行
サーバーにssh接続したターミナルに
lxc config trust add –name lxd-ui
で、作られたtoken、この場合[ey…..J19]をコピーしてブラウザの Pasete your token here に貼り付けて、[Import] ボタンをクリック
WEBブラウザの停止起動
MacOSのWEBブラウザ Safariを修了する。
一応、lxd もリロードしておく。
MacOSのWEBブラウザ Safariを再び起動する。

UI から LXD の操作ができる段階になりました。
注意
WEBブラウザによって、うまくいかない可能性が残るので、MacOSの場合は Safari が良さそうでした。未確認!