これは何?
- Linux のコンテナ技術 LXD を使ってみる。
- コンテナ技術といえば Docker が有名ですが、利用する側から見ると LXD は既存の完全/準仮想化技術(virtualboxやkvmなど)に近いものです。
- 完全/準仮想化技術との比較
- 完全/準仮想化同様、複数のゲストOSを起動できる。
- ただし、扱えるゲストOSは Linux のみで、ゲストはホストの linux kernel を使います。
- 完全/準仮想化と違い、ハードウェアをシミュレーションしないので、動きは速いです。
- ここに書いたこと
-
- VagrantでUbuntu18.04(bionic)を起動
-
- LXDの初期設定
-
- イメージのダウンロード&コンテナ起動
- コンテナの停止/一時停止も
-
- コンテナのスナップショットを撮り、tar.gz へバックアップ
- スナップショットのリストアも
-
- tar.gz バックアップからコンテナを復元
-
LXD のコマンドフロー
今回使った環境
- LXD は Ubuntu の Canonical が推している Linuxのコンテナ技術なので、ここでは、最近(2018/04)リリースされた長期サポート版、Ubuntu 18.04 LTS "Bionic Beaver" を使うことにします。(LXD は Ubuntu 以外のディストリビューションでも使えます)
- といっても、Ubuntuマシンが手元に無いので、Vagrant で ゲストOS として Ubuntu を立て、そこから LXD を使います。
- 構成はこんな感じ。
Windows10
→Vagrant
→VirtualBox
→Ubuntu 18.04 LTS “Bionic Beaver”
→LXD 3.0.1
→ストレージプール
→イメージ
→コンテナ(RUNNING or FROZEN or STOP)
→スナップショット
1) VagrantでUbuntu18.04(bionic)を起動
- Windows10へのVagrantインストール手順は省きます。
Vagrantファイルを書く
- BOXイメージは、Ubuntu公式の "ubuntu/bonic64" を使います。
Vagrant
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/bionic64"
config.vm.hostname = "ubuntu-bionic"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.provider "virtualbox" do |vb|
vb.name = "ubuntu-bionic"
vb.gui = true
vb.memory = "2048"
vb.customize [
"modifyvm", :id,
"--hwvirtex", "on",
"--nestedpaging", "on",
"--largepages", "on",
"--pae", "on",
"--paravirtprovider", "kvm",
# "--vram", "256", # ビデオメモリ確保(フルスクリーンモードにするため)
# "--clipboard", "bidirectional", # クリップボードの共有
# "--draganddrop", "bidirectional", # ドラッグアンドドロップ可能に
"--cpus", "2", # CPUは2つ
"--ioapic", "on" # I/O APICを有効化
]
end
end
ゲストOS Ubuntu 起動
C:\hoge>vagrant up
ゲストOS Ubuntu へ ssh でログイン
C:\hoge>vagrant ssh
Welcome to Ubuntu 18.04 LTS (GNU/Linux 4.15.0-23-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Sun Aug 26 02:46:09 UTC 2018
System load: 0.0 Processes: 95
Usage of /: 13.6% of 9.63GB Users logged in: 0
Memory usage: 8% IP address for enp0s3: 10.0.2.15
Swap usage: 0% IP address for enp0s8: 192.168.33.10
Get cloud support with Ubuntu Advantage Cloud Guest:
http://www.ubuntu.com/business/services/cloud
65 packages can be updated.
26 updates are security updates.
vagrant@ubuntu-bionic:~$
2) LXD の初期設定
LXD バージョン確認
- 念のため最新にしておきます。
vagrant@ubuntu-bionic:~$ sudo apt update
vagrant@ubuntu-bionic:~$ sudo apt upgrade
- 今回使った Vagrant の BOX イメージの場合、LXDはインストール済みなのでバージョンだけ確認しておきます。
vagrant@ubuntu-bionic:~$ lxc --version
3.0.1
vagrant@ubuntu-bionic:~$ lxd --version
3.0.1
vagrant@ubuntu-bionic:~$ dpkg -l | egrep "lxd|lxc"
ii liblxc-common 3.0.1-0ubuntu1~18.04.2 amd64 Linux Containers userspace tools (common tools)
ii liblxc1 3.0.1-0ubuntu1~18.04.2 amd64 Linux Containers userspace tools (library)
ii lxcfs 3.0.1-0ubuntu2~18.04.1 amd64 FUSE based filesystem for LXC
ii lxd 3.0.1-0ubuntu1~18.04.1 amd64 Container hypervisor based on LXC - daemon
ii lxd-client 3.0.1-0ubuntu1~18.04.1 amd64 Container hypervisor based on LXC - client
-
バージョンは 3.0.1 でした。
-
メモ。lxc と lxd コマンドを使うので、
apt install lxc
しないとダメだと思ってた。けど実際は、lxc コマンドは lxd-client パッケージ に含まれていた。つまり、lxc パッケージは無くても LXD 使えました。 -
ストレージバックエンドに btrfs を使うので、これのバージョンも確認しておきます。
vagrant@ubuntu-bionic:~$ dpkg -l | grep btrfs
ii btrfs-progs 4.15.1-1build1 amd64 Checksumming Copy on Write Filesystem utilities
ii btrfs-tools 4.15.1-1build1 amd64 transitional dummy package
lxc コマンドを、ユーザ vagrant から使えるように設定
-
sudo lxc
としなくても使えるように設定します。
## id 確認
vagrant@ubuntu-bionic:~$ id
uid=1000(vagrant) gid=1000(vagrant) groups=1000(vagrant)
## lxd グループにも所属させる
vagrant@ubuntu-bionic:~$ sudo gpasswd -a vagrant lxd
Adding user vagrant to group lxd
## lxd グループに vagrant ユーザが追加されていることを確認
vagrant@ubuntu-bionic:~$ getent group lxd
lxd:x:108:ubuntu,vagrant
## 設定を有効にするため、ログインしなおす
vagrant@ubuntu-bionic:~$ exit
- 再ログイン後
## id 確認
vagrant@ubuntu-bionic:~$ id
uid=1000(vagrant) gid=1000(vagrant) groups=1000(vagrant),108(lxd)
## lxd グループに属しているのでOK
ストレージプール、ネットワークなどの各種設定 ~ lxd init
- 全てデフォルトでもいいですが、以下変更しました。
- ストレージプールのサイズ 15GB を 5GB へ
- IPv6 を auto から none へ
vagrant@ubuntu-bionic:~$ sudo lxd init
Would you like to use LXD clustering? (yes/no) [default=no]: # 別マシンと連携しない
Do you want to configure a new storage pool? (yes/no) [default=yes]: # storage pool(コンテナの実体の保存先)を新しく作る
Name of the new storage pool [default=default]: # 名称 は "default"
Name of the storage backend to use (btrfs, dir, lvm) [default=btrfs]: # strage backend は btrfs を使う(ホストのファイルシステムは何でもいい)
Create a new BTRFS pool? (yes/no) [default=yes]:
Would you like to use an existing block device? (yes/no) [default=no]: # ブロックデバイスは使わない(=ループバックイメージファイル使用)
Size in GB of the new loop device (1GB minimum) [default=15GB]: 5
Would you like to connect to a MAAS server? (yes/no) [default=no]: # MASS(ubuntu のデプロイツール?)は使わない
Would you like to create a new local network bridge? (yes/no) [default=yes]: # LXD用に local network bridge を作る
What should the new bridge be called? [default=lxdbr0]: # 名前は "lxdbr0"
What IPv4 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]:
What IPv6 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: none
Would you like LXD to be available over the network? (yes/no) [default=no]: # 外部マシンからのLXDへの接続を利用禁止
Would you like stale cached images to be updated automatically? (yes/no) [default=yes] # 取得したコンテナイメージを自動アップデートする
Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]:
3) イメージのダウンロード&コンテナ起動
- コンテナを起動するには、リモートが公開しているイメージをダウンロードし、これからコンテナを作り起動します。
リモートの一覧を確認
- まず、初期登録されている リモートの一覧 を確認しておきます。
vagrant@ubuntu-bionic:~$ lxc remote list
If this is your first time running LXD on this machine, you should also run: lxd init
To start your first container, try: lxc launch ubuntu:16.04
+-----------------+------------------------------------------+---------------+-----------+--------+--------+
| NAME | URL | PROTOCOL | AUTH TYPE | PUBLIC | STATIC |
+-----------------+------------------------------------------+---------------+-----------+--------+--------+
| images | https://images.linuxcontainers.org | simplestreams | | YES | NO |
+-----------------+------------------------------------------+---------------+-----------+--------+--------+
| local (default) | unix:// | lxd | tls | NO | YES |
+-----------------+------------------------------------------+---------------+-----------+--------+--------+
| ubuntu | https://cloud-images.ubuntu.com/releases | simplestreams | | YES | YES |
+-----------------+------------------------------------------+---------------+-----------+--------+--------+
| ubuntu-daily | https://cloud-images.ubuntu.com/daily | simplestreams | | YES | YES |
+-----------------+------------------------------------------+---------------+-----------+--------+--------+
- 今回は、images リモート からイメージをダウンロードすることにします。
リモートが公開しているイメージ一覧を確認
- images リモートで公開されているイメージの一覧を確認します。
vagrant@ubuntu-bionic:~$ lxc image alias list images: | head
+---------------------------------+--------------+-------------+
| ALIAS | FINGERPRINT | DESCRIPTION |
+---------------------------------+--------------+-------------+
| alpine/3.4 | cc8b58012122 | |
+---------------------------------+--------------+-------------+
| alpine/3.4/amd64 | cc8b58012122 | |
+---------------------------------+--------------+-------------+
| alpine/3.4/armhf | 7813a1299900 | |
+---------------------------------+--------------+-------------+
| alpine/3.4/default | cc8b58012122 | |
-
より詳細を見たいなら
lxc image list images:
が使えますが、ここでは省略します。 -
今回は centos7 のイメージを使うことにします。
-
イメージを探します。
vagrant@ubuntu-bionic:~$ lxc image alias list images: | grep centos
| centos/6 | c25e874b12b9 | |
| centos/6/amd64 | c25e874b12b9 | |
| centos/6/default | c25e874b12b9 | |
| centos/6/default/amd64 | c25e874b12b9 | |
| centos/6/default/i386 | 6fc5c17866f2 | |
| centos/6/i386 | 6fc5c17866f2 | |
| centos/7 | 5206a7bf4f53 | |
| centos/7/amd64 | 5206a7bf4f53 | |
| centos/7/default | 5206a7bf4f53 | |
| centos/7/default/amd64 | 5206a7bf4f53 | |
- centos/7 イメージを使うことにします。
イメージのダウンロード&コンテナ起動 ~ lxc launch
- centos/7 イメージから、コンテナを起動します。
- コンテナ名は c01 で作ります。
vagrant@ubuntu-bionic:~$ lxc launch images:centos/7 c01
Creating c01
Starting c01
- これで、コンテナ起動しますが、実は起動の前に、リモートからダウンロードしたイメージを、ローカルに保存します。これを確認しておきます。
- 次回からは、このローカルのイメージを使ってコンテナが作られます。(次回からコンテナ作成が速くなります)
vagrant@ubuntu-bionic:~$ lxc image list
+-------+--------------+--------+---------------------------------+--------+---------+------------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCH | SIZE | UPLOAD DATE |
+-------+--------------+--------+---------------------------------+--------+---------+------------------------------+
| | 5206a7bf4f53 | no | Centos 7 amd64 (20180826_02:16) | x86_64 | 83.45MB | Aug 26, 2018 at 3:39am (UTC) |
+-------+--------------+--------+---------------------------------+--------+---------+------------------------------+
- ローカルに保存されたイメージがありました。(リモートとローカルイメージの FINGERPRINT が同じです)
コンテナを確認 ~ lxc list
- 先ほど、作って起動した c01 コンテナを確認します。
vagrant@ubuntu-bionic:~$ lxc list
+------+---------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+-----------------------+------+------------+-----------+
| c01 | RUNNING | 10.251.221.100 (eth0) | | PERSISTENT | 0 |
+------+---------+-----------------------+------+------------+-----------+
- c01 が RUNNING になってます。
コンテナ内でコマンド実行 ~ lxc exec
- c01 コンテナ内で bash を起動してみます。
vagrant@ubuntu-bionic:~$ lxc exec c01 -- bash
[root@c01 ~]# id
uid=0(root) gid=0(root) groups=0(root)
- 起動できました。なお、
lxc exec
で実行したコマンドは、root権限のようです。
コンテナを 停止、一時停止 ~ lxc stop / lxc pause
- コンテナを「停止 → 開始 → 一時停止 → 再開」してみます。
- コンテナの開始/停止は、サーバの電源ON/OFFに対応しており、Linux の init あるいは systemd の開始/終了シーケンスを実行することを意味します。
vagrant@ubuntu-bionic:~$ lxc list
+------+---------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+-----------------------+------+------------+-----------+
| c01 | RUNNING | 10.251.221.100 (eth0) | | PERSISTENT | 0 |
+------+---------+-----------------------+------+------------+-----------+
## RUNNING → 停止
vagrant@ubuntu-bionic:~$ lxc stop c01
vagrant@ubuntu-bionic:~$ lxc list
+------+---------+------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+------+------+------------+-----------+
| c01 | STOPPED | | | PERSISTENT | 0 |
+------+---------+------+------+------------+-----------+
vagrant@ubuntu-bionic:~$
## STOPPED → 開始
vagrant@ubuntu-bionic:~$ lxc start c01
vagrant@ubuntu-bionic:~$ lxc list
+------+---------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+-----------------------+------+------------+-----------+
| c01 | RUNNING | 10.251.221.100 (eth0) | | PERSISTENT | 0 |
+------+---------+-----------------------+------+------------+-----------+
## RUNNING → 一時停止
vagrant@ubuntu-bionic:~$ lxc pause c01
vagrant@ubuntu-bionic:~$ lxc list
+------+--------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+--------+-----------------------+------+------------+-----------+
| c01 | FROZEN | 10.251.221.100 (eth0) | | PERSISTENT | 0 |
+------+--------+-----------------------+------+------------+-----------+
## FROZEN → 再開
vagrant@ubuntu-bionic:~$ lxc start c01
vagrant@ubuntu-bionic:~$ lxc list
+------+---------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+-----------------------+------+------------+-----------+
| c01 | RUNNING | 10.251.221.100 (eth0) | | PERSISTENT | 0 |
+------+---------+-----------------------+------+------------+-----------+```
4) コンテナのスナップショットを撮り、tar.gz へバックアップ
- 手順は「コンテナ → スナップショット → イメージ → tar.gz」です。
- 実は、スナップショットは作らず、コンテナから直接イメージ化もできるので、1ステップ減らすこともできます。
- 途中、スナップショットのリストアもやってみます。
コンテナのスナップショットを撮る ~ lxc snapshot
- c01 コンテナのスナップショットを撮ります。
- スナップショットの名前は、c01-snap1 とします。
vagrant@ubuntu-bionic:~$ lxc snapshot c01 c01-snap1
- スナップショットが取れたことを確認します。
vagrant@ubuntu-bionic:~$ lxc list
+------+---------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+-----------------------+------+------------+-----------+
| c01 | RUNNING | 10.251.221.100 (eth0) | | PERSISTENT | 1 |
+------+---------+-----------------------+------+------------+-----------+
- SNAPSHOTS が カウントアップされ、1 になっています。
- さらに、c01 コンテナの詳細を見てみます。
vagrant@ubuntu-bionic:~$ lxc info c01
Name: c01
Remote: unix://
Architecture: x86_64
Created: 2018/08/26 03:39 UTC
Status: Running
Type: persistent
Profiles: default
Pid: 8428
Ips:
eth0: inet 10.251.221.100 vethJKJKAD
eth0: inet6 fe80::216:3eff:febe:fb9a vethJKJKAD
lo: inet 127.0.0.1
lo: inet6 ::1
Resources:
Processes: 11
CPU usage:
CPU usage (in seconds): 0
Memory usage:
Memory (current): 19.24MB
Memory (peak): 21.20MB
Network usage:
eth0:
Bytes received: 1.47kB
Bytes sent: 1.30kB
Packets received: 16
Packets sent: 15
lo:
Bytes received: 0B
Bytes sent: 0B
Packets received: 0
Packets sent: 0
Snapshots:
c01-snap1 (taken at 2018/08/26 03:56 UTC) (stateless)
- c01-snap1 スナップショットを確認できました。
スナップショットをリストア ~ lxc restore
- では、作ったばかりの c01-snap1 スナップショットをリストアしてみます。
- その前に、スナップショットのリストア前後が分かるように、まず、/tmp/abcd ファイルを作っておきます。
vagrant@ubuntu-bionic:~$ lxc exec c01 -- bash
[root@c01 ~]# touch /tmp/abcd
[root@c01 ~]# ls -al /tmp/abcd
-rw-r--r-- 1 root root 0 Aug 26 04:02 /tmp/abcd
[root@c01 ~]# exit
exit
vagrant@ubuntu-bionic:~$
- c01-snap1 スナップショットをリストアすると、このファイルの作成前に戻るはずです。
- では、リストアしてみましょう。
vagrant@ubuntu-bionic:~$ lxc restore c01 c01-snap1
- 戻っているか確認します。
vagrant@ubuntu-bionic:~$ lxc exec c01 -- bash
[root@c01 ~]# ls -al /tmp
total 0
drwxrwxrwt 1 root root 94 Aug 26 04:04 .
dr-xr-xr-x 1 root root 146 Aug 26 02:23 ..
drwxrwxrwt 1 root root 0 Aug 26 02:23 .ICE-unix
drwxrwxrwt 1 root root 0 Aug 26 02:23 .Test-unix
drwxrwxrwt 1 root root 0 Aug 26 02:23 .X11-unix
drwxrwxrwt 1 root root 0 Aug 26 02:23 .XIM-unix
drwxrwxrwt 1 root root 0 Aug 26 02:23 .font-unix
[root@c01 ~]# exit
exit
vagrant@ubuntu-bionic:~$
- /tmp/abcd が無くなりました。ちゃんと戻りましたね。
スナップショットからイメージを作る ~ lxc publish
- c01-snap1 スナップショットからイメージを作成します。
- イメージ名は、c01-snap1-img で作ります。
vagrant@ubuntu-bionic:~$ lxc publish c01/c01-snap1 --alias c01-snap1-img
Container published with fingerprint: 4410ad7c4ad6f1fe7ac411032c7a73418e8ff2cb620c08cb714df1dca934233e
- c01-snap1-img ができたか確認します。
vagrant@ubuntu-bionic:~$ lxc image list
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCH | SIZE | UPLOAD DATE |
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
| c01-snap1-img | 4410ad7c4ad6 | no | | x86_64 | 124.82MB | Aug 26, 2018 at 4:11am (UTC) |
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
| | 5206a7bf4f53 | no | Centos 7 amd64 (20180826_02:16) | x86_64 | 83.45MB | Aug 26, 2018 at 3:39am (UTC) |
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
- できましたね。
イメージからtar.gzを作る ~ lxc export
- 先ほどの c01-snap1-img イメージ を tar.gz にしてみます。
vagrant@ubuntu-bionic:~$ lxc image export c01-snap1-img .
Image exported successfully!
- tar.gz ができたか確認します。
vagrant@ubuntu-bionic:~$ ls -l
total 127820
-rw-rw-r-- 1 vagrant vagrant 130886826 Aug 26 04:14 4410ad7c4ad6f1fe7ac411032c7a73418e8ff2cb620c08cb714df1dca934233e.tar.gz
- できました。
5) tar.gz バックアップからコンテナを復元
- 手順は「tar.gz → イメージ → コンテナ」です。
tar.gz から イメージ を復元 ~ lxc iage import
- 先に作っておいた tar.gz から イメージ を作ります。
- イメージ名は、targz-img で作ります。
vagrant@ubuntu-bionic:~$ ls
4410ad7c4ad6f1fe7ac411032c7a73418e8ff2cb620c08cb714df1dca934233e.tar.gz
vagrant@ubuntu-bionic:~$ lxc image import 4410ad7c4ad6f1fe7ac411032c7a73418e8ff2cb620c08cb714df1dca934233e.tar.gz --alias targz-img
Error: Image with same fingerprint already exists
- 同じイメージから作った tar.gz なので、already exists になりました。
- もう一度イメージ一覧を確認して、どうするか考えてみます。
vagrant@ubuntu-bionic:~$ lxc image list
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCH | SIZE | UPLOAD DATE |
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
| c01-snap1-img | 4410ad7c4ad6 | no | | x86_64 | 124.82MB | Aug 26, 2018 at 4:11am (UTC) |
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
| | 5206a7bf4f53 | no | Centos 7 amd64 (20180826_02:16) | x86_64 | 83.45MB | Aug 26, 2018 at 3:39am (UTC) |
+---------------+--------------+--------+---------------------------------+--------+----------+------------------------------+
- 今回は import のやり方を確認したいだけなので、c01-snap1-img イメージを無理やり消してから再チャレンジします。
vagrant@ubuntu-bionic:~$ lxc image delete c01-snap1-img
vagrant@ubuntu-bionic:~$ lxc image list
+-------+--------------+--------+---------------------------------+--------+---------+------------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCH | SIZE | UPLOAD DATE |
+-------+--------------+--------+---------------------------------+--------+---------+------------------------------+
| | 5206a7bf4f53 | no | Centos 7 amd64 (20180826_02:16) | x86_64 | 83.45MB | Aug 26, 2018 at 3:39am (UTC) |
+-------+--------------+--------+---------------------------------+--------+---------+------------------------------+
- 削除できました。改めて、tar.gz を import して イメージ を作ります。
vagrant@ubuntu-bionic:~$ lxc image import 4410ad7c4ad6f1fe7ac411032c7a73418e8ff2cb620c08cb714df1dca934233e.tar.gz --alias targz-img
Image imported with fingerprint: 4410ad7c4ad6f1fe7ac411032c7a73418e8ff2cb620c08cb714df1dca934233e
vagrant@ubuntu-bionic:~$ lxc image list
+-----------+--------------+--------+--------------------------------------------+--------+----------+------------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCH | SIZE | UPLOAD DATE |
+-----------+--------------+--------+--------------------------------------------+--------+----------+------------------------------+
| targz-img | 4410ad7c4ad6 | no | centos 7 x86_64 (default) (20180826_02:16) | x86_64 | 124.82MB | Aug 26, 2018 at 5:59am (UTC) |
+-----------+--------------+--------+--------------------------------------------+--------+----------+------------------------------+
| | 5206a7bf4f53 | no | Centos 7 amd64 (20180826_02:16) | x86_64 | 83.45MB | Aug 26, 2018 at 3:39am (UTC) |
+-----------+--------------+--------+--------------------------------------------+--------+----------+------------------------------+
- イメージができました。
- では、targz-img イメージから、コンテナを作ります。
- コンテナ名は、c02-targz で作ります。
vagrant@ubuntu-bionic:~$ lxc launch targz-img c02-targz
Creating c02-targz
Starting c02-targz
vagrant@ubuntu-bionic:~$ lxc list
+-----------+---------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+-----------+---------+-----------------------+------+------------+-----------+
| c01 | RUNNING | 10.251.221.100 (eth0) | | PERSISTENT | 1 |
+-----------+---------+-----------------------+------+------------+-----------+
| c02-targz | RUNNING | | | PERSISTENT | 0 |
+-----------+---------+-----------------------+------+------------+-----------+
- 無事、コンテナ起動できました。
参考サイト
第521回 入門システムコンテナマネージャーLXD 3.0:Ubuntu Weekly Recipe|gihyo.jp … 技術評論社
http://gihyo.jp/admin/serial/01/ubuntu-recipe/0521?page=2