Raspberry Pi 4でUbuntuサーバーの初期設定を行う

[2020年に書いた](https://qiita.com/k_ken/items/0f2d6af2618618982723)Raspberry pi 4構築手順の続編.今回はラズパイ4で8GB版が発売され、[ubuntuがraspberry piに正式対応](https://ubuntu.com/download/raspberry-pi)したので、ラズパイを本格的なサーバーとして運用すべくラズパイ4(8GB)にubuntuを設定します.構築しながら書いているので、読みにくかったり、順番が前後する箇所があります.

注意:ここに書かれている情報は2021年03月執筆時点での情報です.

この記事はDockerをラズパイで動かそうシリーズ（？）の一つです

- [Raspberry Pi 4でUbuntuサーバーの初期設定を行う](https://qiita.com/k_ken/items/9a71655400798f84d636)←今ここ
- [RaspberryPiにDockerを構築する(Ubuntu編)](https://qiita.com/k_ken/items/72fe1b86dda61ed34604)
- [ラズパイでdocker構築に時間がかかった時のtips](https://qiita.com/k_ken/items/1e5ec65554b5adfe22bf/)

## 前提条件
- Raspberry pi 4 Model B 8GB RAM
- Ubuntu Server 20.04.2 LTS
- リモート接続元
    - macOS Big Sur(V11.2.2)

## ラズパイにOSをインストールする
イメージ書き込みツール「Raspberry Pi Imager」を使用します.まず、SDカードを差し込んでイメージを書き込みます.

1. [ダウンロードページ](https://www.raspberrypi.org/software/)に行きインストーラーをダウンロードします
![スクリーンショット 2021-03-04 19.20.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235984/1ca6f34d-1065-8ee3-2100-caabcd6835c1.png)
2. ダウンロードしたインストーラーを開いてアプリケーションフォルダにインストール
![スクリーンショット 2021-03-04 19.22.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235984/4ac6e9ab-b8e7-d5c4-02a1-3d89a2097650.png)
3. 好きなOSを選択します。今回は64bitのUbuntuサーバーを書き込みます
![スクリーンショット 2021-03-04 19.46.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235984/6b2b1883-40ba-382f-27a3-119cca36d04c.png)
4. 書き込むSDカードを選び
![スクリーンショット 2021-03-04 19.47.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235984/91270e64-dc84-d65c-35ae-dc68f973e59c.png)
5. 最後に「WRITE」ボタンを押すとSDカードへの書き込みが開始されます。書き込みが終わるとOSイメージのSDカード作成は完了です
![スクリーンショット 2021-03-04 19.47.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235984/2c397c83-bda7-f252-0c8c-a0ca36e6fe3e.png)

あとはSDカードをラズパイにさして電源を入れれば起動します.

ubuntuに初期設定されているユーザーは以下の通りです。

user: ubuntu
Password: ubuntu

パスワード変更を要求されるので変更しましょう.

### 参考リンク
-  [Raspberry Piに公式のイメージ書き込みツール「Raspberry Pi Imager」がリリースされてセットアップが超便利に #RaspberryPi | DevelopersIO](https://dev.classmethod.jp/articles/raspberry-pi-imager-introduction/)
- [Raspberry Pi 4でUbuntuデスクトップを動かして遊ぶ - Qiita](https://qiita.com/y-tsutsu/items/b50d44bd70c25279d130)

## キーボード設定

以降は、`raspberry pi`を直接ディスプレイに表示して操作。US配列を使用している場合以下の設定は不要.

```bash
sudo dpkg-reconfigure keyboard-configuration
```
1. 以上のコマンドを実行
2. 「Generic 105-key PC (intl.)」を選択
3. 「Japanese」を選択
4. 「Japanese」を選択
5. 「The default for the keyboard layout」を選択
6. 「No compose key」を選択で終了

### 参考リンク
- [Ubuntuでキーボードレイアウト変更 - Ragnite Blue](https://thejuraku.com/pc/ubuntuでキーボードレイアウト変更/)
- [Ubuntu Serverのキーボード を日本語レイアウトに変更 - Qiita](https://qiita.com/Toshiaki0315/items/08dfaf70ec11b23fe05b)

## LAN設定/固定IP化

`ip a`とコマンドを入力してアダプターを確認する。私のラズパイでは無線LANアダプターは`wlan0`で有線は`eth0`だった.
Ubuntuではネット接続の設定には`Netplan`を利用する.デフォルトでは`/etc/netplan/50-cloud-init.yaml`に設定ファイルがある.

`/etc/netplan/99_config.yaml`を作成し例えば以下のように設定する.`wlan0`の部分は無線LANアダプターの設定により変わる.例では有線も固定IPを振っている.`gateway4`にはルーターのIP(大抵`192.168.0.1`)を設定し、`nameservers`にはDNSサーバーを設定する.
access-points項目でSSID名とpasswordを設定(※SSID-HOGEHOGEとパスワードのXXXXXXXXXは環境に合わせて適時設定).

```bash
sudo touch /etc/netplan/99_config.yaml
sudo vi /etc/netplan/99_config.yaml
```

```/etc/netplan/99_config.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
      dhcp6: false
      addresses:
        - 192.168.0.YYY/24
      gateway4: 192.168.0.XXX
      nameservers:
          addresses: [192.168.0.XXX, 8.8.8.8, 8.8.4.4]
  wifis:
    wlan0:
      dhcp4: false
      dhcp6: false
      addresses:
        - 192.168.0.YYY/24
      gateway4: 192.168.0.XXX
      nameservers:
          addresses: [192.168.0.XXX, 8.8.8.8, 8.8.4.4]
      access-points:
          "SSID-HOGEHOGE":
              password: "XXXXXXXXX"
```

上記を保存後変更を適用

```
sudo netplan apply
```

`ip a`コマンドを実行して固定IPが割り振られているか確認する

```bash
$ ip a
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 192.168.0.XX/24 brd 192.168.0.255 scope global noprefixroute wlan0
       valid_lft forever preferred_lft forever
```

`renderer`の箇所を`NetworkManager`にしたい場合は事前に`network-manager`をインストールしておく。

```
apt install network-manager
```

### 参考リンク
- [Ubuntu 20.04 LTSで固定IPアドレスの設定 - Qiita](https://qiita.com/zen3/items/757f96cbe522a9ad397d)
- [Network - Configuration | Ubuntu](https://ubuntu.com/server/docs/network-configuration)
- [Raspberry Pi3 + Ubuntu Server 19.10のWi-Fi設定 | Field Note](https://www.field-note.net/linux/933/)

### うまくいかなかった場合

`sudo netplan --debug try`でデバッグ。

```
Job for netplan-wpa-wlan0.service canceled.
Traceback (most recent call last):
  File "/usr/share/netplan/netplan/cli/commands/try_command.py", line 84, in command_try
    NetplanApply().command_apply(run_generate=True, sync=True, exit_on_error=False)
  File "/usr/share/netplan/netplan/cli/commands/apply.py", line 160, in command_apply
    utils.systemctl_networkd('stop', sync=sync, extra_services=wpa_services)
  File "/usr/share/netplan/netplan/cli/utils.py", line 125, in systemctl_networkd
    subprocess.check_call(command)
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['systemctl', 'stop', 'systemd-networkd.service', 'netplan-wpa-*.service']' returned non-zero exit status 1.

```

それでも接続に失敗する場合はGUI上で設定する（GUIインストール手順は後述）.私の場合はWi-Fi設定がどうしてもうまくいかなった.

## ssh有効化
ラズパイをインターネットに接続した状態で以下のコマンドを実行してsshを有効化するが、なぜか失敗する.

```bash
$ sudo apt -y install openssh-server #openssh-serverを入れていない場合は実行
$ sudo apt update  #インストール可能なパッケージの一覧を更新
$ sudo apt upgrade  #インストール済みのパッケージ更新をおこなう
$ sudo systemctl start ssh #ssh起動
```

sshプロセスが起動しないので、debugのため`/etc/default/ssh`を以下のように編集. [参照サイト](https://raspberrypi.stackexchange.com/questions/109595/raspbian-stretch-unable-to-start-ssh-on-boot-problem-starting-ssh-on-boot-exit).

```/etc/default/ssh
SSHD_OPTS=-ddd
```

再度`sudo systemctl start ssh`を実行して`journalctl -xe`でログを確認すると以下のログが.

```
Mar 04 18:37:55 ubuntu sudo[1979]: pam_unix(sudo:auth): Couldn't open /etc/securetty: No such file or directory
```

とりあえず、`/usr/share/doc/util-linux/examples/securetty`からコピーしてくる。

```
sudo cp /usr/share/doc/util-linux/examples/securetty /etc/securetty
```

なお下記のサイトを参考にした

- [Couldn&#39;t open /etc/securetty - Qiita](https://qiita.com/dharry/items/9e35bb252307a5bce108)
- [security - Ubuntu 20.04 and 20.10, /etc/securetty: No such file or directory - Ask Ubuntu](https://askubuntu.com/questions/1239503/ubuntu-20-04-and-20-10-etc-securetty-no-such-file-or-directory)

それでも同じエラーが出るので`openssh-server`を再インストールする.解決(おそらくファイルが壊れていた？)[参照](https://stackoverflow.com/questions/36699831/raspberry-pi-suddenly-no-ssh-access)

```
sudo apt-get purge openssh-server
sudo apt-get install openssh-server
service ssh start #ssh起動
systemctl status  ssh #ssh起動確認
```

リモート接続元から`ssh ubuntu@192.168.0.XXX`で接続できるか確認。これ以降はリモートでラズパイを操作可能。

### 参考リンク
[Ubuntu 20.04 LTS : OpenSSH : パスワード認証 : Server World](https://www.server-world.info/query?os=Ubuntu_20.04&p=ssh&f=1)

## デスクトップ環境の導入
ごく稀にデスクトップ環境が欲しくなるので、導入しておく.今回は無線LANの設定がうまくいかなかったので、GUI上でWiFi設定を行うために行った.
まずはインストール可能なパッケージの一覧を更新

```
sudo apt-get update
```

デスクトップ環境のインストール.気長に待ちましょう.

```
sudo apt-get -y install ubuntu-desktop
```

インストールが終わったら再起動してGUIが起動しているか確認します。

```
sudo shutdown -r now
```

### 参考
- [Ubuntu 18.04 LTS に後から GUI (X Window System) を追加する - CUBE SUGAR CONTAINER](https://blog.amedama.jp/entry/2018/08/04/230601)


## リモートデスクトップ接続

二つの方法を示します.`TigerVNCを使ったリモートデスクトップ`の場合はラズパイをsshやコマンドラインのみで操作したい場合に有効です.`UbuntuのGUI画面上から画面共有を有効にする`の場合はラズパイ起動時になんらかのディスプレイに出力していた場合に使用できます.接続が安定しているのは後者ですが、そもそもラズパイをサーバー用途で使用する場合は前者のケースが多いでしょう.

### TigerVNCを使ったリモートデスクトップ

VNCサーバーをインストールします.`tigervnc`を使用します.

```bash
sudo apt -y install tigervnc-standalone-server tigervnc-xorg-extension tigervnc-viewer
```

vncを許可するユーザでログインします.

```
su <<ユーザー名>>
```

VNC パスワード設定を行います,

```
$ vncpasswd
Password:
Verify:
Would you like to enter a view-only password (y/n)? n 
```

VNCサーバーが起動するか確認.確認ができたら停止します.UbuntuをGUIモードで起動した場合は`vncserver :1`が既に使用されている場合があるので、ラズパイからHDMIなどの映像出力端子を抜いて再起動してください.

```bash
$ vncserver :1 

New 'linux:1 (ubuntu)' desktop at :1 on machine linux

Starting applications specified in /etc/X11/Xvnc-session
Log file is /home/ubuntu/.vnc/linux:1.log

Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/ubuntu/.vnc/passwd :1 to connect to the VNC server.
$ vncserver -kill :1 
Killing Xtigervnc process ID 2658... success!
```

設定ファイルを作成します.使用できるデスクトップ環境（`gnome-session`）の部分は`/usr/share/xsessions/`で確認できる.

```~/.vnc/xstartup
#!/bin/sh

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
vncconfig -iconic &
dbus-launch --exit-with-session gnome-session &
```

再びVNCサーバーを起動.ラズパイで起動したい場合は`LD_PRELOAD=/lib/aarch64-linux-gnu/libgcc_s.so.1`を付加する必要がある.[関連イシュー](https://github.com/TigerVNC/tigervnc/issues/800).

```bash
# ディスプレイ番号 [1], 解像度 [800x600] で起動
$ LD_PRELOAD=/lib/aarch64-linux-gnu/libgcc_s.so.1 vncserver :1 -geometry 800x600 -localhost no
```

Macの場合プリインストールされているアプリで画面共有が可能.`tigervnc`の場合デフォルトでは`590[ディスプレイ番号]`のポートが空いているので、そのポートに接続する.

```
#5901ポートが空いているか確認
$ ss -lnt
State   Recv-Q    Send-Q  Local Address:Port   Peer Address:Port     Process
LISTEN  0         5             0.0.0.0:5901          0.0.0.0:* 
```

![スクリーンショット 2021-03-05 22.08.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235984/bf06febd-f5a7-8bd1-0f81-82ff7ff7c426.png)

vncserverをまとめて消したい場合は以下のコマンドを実行

```
vncserver -kill :*
```

#### 参考サイト
- [Ubuntu 20.04 LTS : VNC サーバーの設定 : Server World](https://www.server-world.info/query?os=Ubuntu_20.04&p=desktop&f=5)
- [Ubuntu18.04 LTS GNOME環境でVNCサーバーを立てる - Qiita](https://qiita.com/_dakc_/items/81ca237dfc4cfec855d9)
- [Install VNC Server with Gnome display on Ubuntu 18.04 - Teknotut](https://www.teknotut.com/en/install-vnc-server-with-gnome-display-on-ubuntu-18-04/#Install_Gnome)

### UbuntuのGUI画面上から画面共有を有効にする.

右上のメニューから[Settings]を選んだのち[Sharing]を選び.[Screen Sharing]を有効化します.一応パスワードも設定しておきます.

![スクリーンショット 2021-03-05 17.28.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235984/e10a7cdc-1fcb-6f05-f2e0-b3ea9c01e2d0.png)


リモート接続元からVNCクライアントを使用して接続すると接続エラーが発生する。これはUbuntuのVNCサーバーが暗号化通信を要求しているにもかかわらず、WinやMacのVNCクライアントが暗号化通信を使っていないのが原因らしい.なので、ターミナルから以下のコマンドを実行して暗号化通信を無効化する

```bash
sudo gsettings set org.gnome.Vino require-encryption false
(process:2734): dconf-WARNING **: 08:20:32.021: failed to commit changes to dconf: Cannot autolaunch D-Bus without X11 $DISPLAY
```

設定を確認.設定が無効化になっていないか、上のようにWarnningが出ていれば設定反映に失敗しているので、`DISPLAY=:0`を付加して再設定.VNCクライアントから接続できるか確認.

```bash
$ gsettings list-recursively org.gnome.Vino
$ DISPLAY=:0 gsettings set org.gnome.Vino require-encryption false
$ sudo gsettings set org.gnome.Vino require-encryption false
```

普段デスクトップ環境は使わないので無効化したい場合は以下のコマンドを実行。[参考](https://mebee.info/2019/09/06/post-1232/)

```bash
sudo systemctl set-default multi-user.target #デスクトップ環境を無効化したい場合
sudo systemctl set-default graphical.target #デスクトップ環境を有効化したい
```

以後、リモートデスクトップ接続したい場合はssh接続したのちVNCを起動する

#### 参考サイト

- [【Ubuntu 20.04/18.04 Desktop】WinやMacパソコンからVNCでリモート接続し画面共有する  |  The modern stone age.](https://www.yokoweb.net/2019/12/09/ubuntu-18_04-desktop-vnc-remote/#toc1)
- [MacからUbuntu18.04へのリモート接続設定備忘録(UFW設定方法付き) - Qiita](https://qiita.com/y-vectorfield/items/c5fd815a9cabe5c2d6d8)

## パッケージ最新化
定期的に以下のコマンドを実行してパッケージを最新化

```bash
$ sudo apt update  #インストール可能なパッケージの一覧を更新
$ sudo apt upgrade  #インストール済みのパッケージ更新をおこなう
$ sudo apt install update-manager #初回のみ実行
```

以下のように新しいバージョンが出ていなければ以下の結果が表示される.

```bash
ubuntu@ubuntu:~$ sudo do-release-upgrade
[sudo] password for ubuntu: 
Checking for a new Ubuntu release
There is no development version of an LTS available.
To upgrade to the latest non-LTS development release 
set Prompt=normal in /etc/update-manager/release-upgrades.
```

### 参考サイト
- [Ubuntuのアップグレードのやり方 - Ubuntu入門](https://kaworu.jpn.org/ubuntu/Ubuntuのアップグレードのやり方)

## [ラズパイにSSH接続（鍵認証）](https://qiita.com/kuro___inu/items/93da8aa9b56847c3a2bf)

sshのログイン方法を公開鍵認証にする。

- ssh接続元で鍵生成をする

```bash
ssh-keygen -t rsa
```

- 一旦、ラズパイ(ssh接続先)に`ssh`接続した後。ホームディレクトリ(`~/`)で隠しディレクトリ`.ssh`等々の作成を行う。

```bash
# ログイン
$ ssh hoge_user@hogehoge.hoge.com
$ ls #.sshフォルダとauthorized_keysが存在するか確認
# フォルダとファイルを作る(既に存在している場合は実行しなくても可)
$ mkdir .ssh
$ touch .ssh/authorized_keys
```

- ssh接続元の**公開鍵**(デフォルトだと`id_rsa.pub`)を転送。

```bash
$ scp ~/.ssh/id_rsa.pub pi@192.168.nnn.nnn:~/.ssh
```

- ssh接続先の権限設定。公開鍵を`authorized_keys`に登録。

```bash
# 権限の設定。個々を間違えると、公開鍵認証でログイン出来ないので注意
$ sudo chmod 700 .ssh
$ cat ~/.ssh/id_rsa.pub >> .ssh/authorized_keys # 公開鍵の内容を追加。
$ sudo chmod 600 .ssh/authorized_keys 
$ rm ~/.ssh/id_rsa.pub # SCPした公開鍵を削除削除
```

- `/etc/ssh/sshd_config`を変更してsshの各種設定を行う。以下の各種設定は万が一攻撃者がきても簡単に侵入させないようにするため。

```text:/etc/ssh/sshd_config
# port番号設定
Port nnnnn

# rootログインの禁止
PermitRootLogin no

# 鍵認証を有効化
PubkeyAuthentication yes

# パスワード認証を無効化
PasswordAuthentication no
```

- sshサーバーを再起動

```bash
$  sudo systemctl restart ssh 
```

- 接続の確認

```bash
$ ssh -i .ssh/[非公開鍵] -p [port番号] pi@nnn.nnn.nnn.nnn
```

#### 参考サイト

- [【手順つき】SSHの公開鍵認証のやり方](https://eng-entrance.com/linux-ssh-key)
- [ssh公開鍵認証設定まとめ](https://qiita.com/ir-yk/items/af8550fea92b5c5f7fca)

## [ファイアウォール設定](https://qiita.com/morinokami/items/aee081085dd679b1ea22)

ubuntuには`ufw`がプリインストールされていますが、有効になっていないので有効化しておきます.リモートデスクトップやsshのポートを閉じないように気をつけてください.

```bash
$ sudo apt upgrade ufw  # ufwのアップデート
$ sudo ufw allow 99  # ポートの開放
$ sudo ufw default deny  # 許可されたポート以外を閉じる
$ sudo ufw enable  # ufwの有効化
```

もう少し細かく設定したい場合は[ufwコマンドの使い方](https://qiita.com/hana_shin/items/a630871dce209cff04f3)を参照。

## スワップを無効にする

スワップ領域を確認。Ubuntuではスワップ領域の設定がされていない

```
$ free -h
              total        used        free      shared  buff/cache   available
Mem:          7.6Gi       744Mi       6.0Gi        13Mi       909Mi       6.8Gi
Swap:            0B          0B          0B
```

## 不要パッケージの削除
不要なパッケージを消します.Ubuntuデスクトップを入れた場合、Libre　Office、ThunderbirdとMahjonggなどが入っているので必要なら消します.

```bash
$ sudo apt remove --purge libreoffice* #Libre Officeを消す
$ sudo apt clean
$ sudo apt autoremove
```

## ロケール設定
[この記事の内容](https://qiita.com/yasthon/items/c29d0b9ce34d66eab3ec#time-zoneの変更-3台共通)を参考にして設定変更

### timezoneの変更
```bash
$ sudo timedatectl set-timezone Asia/Tokyo
$ timedatectl | grep Time #確認
                Time zone: Asia/Tokyo (JST, +0900) 
```

### keymap変更
```bash
$ sudo localectl set-keymap jp106
$ localectl #確認
   System Locale: LANG=C.UTF-8
       VC Keymap: jp106
      X11 Layout: jp
       X11 Model: jp106
     X11 Options: terminate:ctrl_alt_bksp
```

## PiJuice

公式レポジトリにインストール方法が書かれていたので、それを元にインストール

- [Installing PiJuice Software on Ubuntu Server 64-bit](https://github.com/PiSupply/PiJuice/blob/f6d5f1c49b0e7d8e8ee5403c8a04f3020555f890/Software/OS%20Support/ubuntu_server_64.MD)
- [Ubuntu/arm64 compatibility #433](https://github.com/PiSupply/PiJuice/blob/f6d5f1c49b0e7d8e8ee5403c8a04f3020555f890/Software/OS%20Support/ubuntu_server_64.MD)


```bash
#!/bin/bash

cd $HOME

sudo apt update
sudo apt install -y python3-smbus python3-pip python3-stdeb dh-systemd debhelper fakeroot python3-all dh-python
sudo pip3 install stem stdeb3

sudo git clone https://github.com/PiSupply/PiJuice.git

cd $HOME/PiJuice/Software/Source/Setuid-Wrapper
sudo ./build-setuid-progs.sh
sudo cp p* $HOME/PiJuice/Software/Source/bin

cd $HOME/PiJuice/Software/Source/
sudo ./pckg-pijuice.sh

sudo cp $HOME/PiJuice/Software/Source/deb_dist_base/pi*.deb $HOME
sudo cp $HOME/PiJuice/Software/Source/deb_dist_gui/pi*.deb $HOME

cd $HOME
sudo rm -rf PiJuice
```

1. 上記スクリプトを実行
2. ローカルにコンパイルした`pijuice-base`をインストール:`cd $HOME` `sudo apt install /home/ubuntu/pijuice-base_1.6_all.deb`
3. **注意**:この手順を実行すると私の環境ではUbuntuがGUI起動に失敗します。 ローカルにコンパイルした`pijuice-gui`をインストール:`cd $HOME` `sudo apt install /home/ubuntu/pijuice-gui_1.6_all.deb`
4. 壊れたパッケージを修正する: `sudo apt --fix-broken install`
5. 再起動し、デスクトップ上で`PiJuice CLI` か `PiJUICE_CLI`を実行。`pijuice_cli`実行時はPiJuiceとラズパイが繋がっていること: `sudo reboot` 再起動後右記実行: `sudo pijuice_cli` か `sudo pijuice_gui`

アンインストールする場合は`sudo apt remove --purge pijuice-gui`と`sudo apt remove --purge pijuice-base`

今のところ`pi`ユーザーか`root`ユーザーでないと`pijuice_cli`は実行できない.[関連イシュー](https://github.com/PiSupply/PiJuice/issues/411)

## 最後に
お疲れ様です.これでラズパイで遊ぶための必要な初期設定は完了です.
~~もしまだ気力があればUbuntuでdocker動かす手順をまとめてみます~~.
気力が残っていたので書きました.

次：[RaspberryPiにDockerを構築する(Ubuntu編)](https://qiita.com/k_ken/items/72fe1b86dda61ed34604)