Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Raspberry Pi互換ボードでDocker

More than 3 years have passed since last update.

はじめに

Raspberry Pi互換ボードのTinker boardを利用してDockerを利用するための導入。

おうちサーバが4年目をそろそろ超えるので、新しく軽量なサーバを構築しようと考えた。
そこで、今のおうちサーバで主にやっていることを洗い出したところ、ファイルサーバとVPNサーバ、そしてHyper-VによるLinuxのテスト用仮想環境の提供だった。

メインのPCも今年の前半に強化してHyper-Vを常時起動しても問題無いくらいの余裕が生まれた。
残ったファイルサーバとVPNサーバの提供であれば、Raspberry Piでもいけると踏んで見つけたのが、今回の互換ボードであるTickerboardである。

TickerboardはRaspberry Piと比較して多くの面で強化されている。参考:impress記事
特に気になったのがGigabit Ethernet。
おうち向けのDNSや証明書の管理サーバを立てる予定だった事もあり、ネットワークだけは早いほうが良いと判断。
この部分をDockerで行う。

OSイメージの検討

ASUS公式で提供されているOSはAndroidとDebian。
Debianを試しに起動し、Docker公式のドキュメントにしたがってインストールを実施していたところ、INSTALL DOCKER CEの項目で正しくパッケージのURLが取得できないようだった。
Debianを利用していることが原因のようだった。
そこで、UbuntuベースのTinker board用のOSを検討した結果armbianを利用する事とした。

OSの起動と初期設定

HDMIとマウス、キーボードLANケーブル、電源ケーブルを挿して、armbianをmicro SDに書き込み起動するとrootのパスワードと、ユーザの追加が求められる。
画面の指示に従い適当に設定する。

日本語の対応を行いたい場合は、画面が立ち上がってから、Applications -> Setting -> Armbian configをクリック。
Rootのパスワードを入力し、表示された画面のPoersonalから各種設定を行う。
さらに、ディスクトップに戻ってから、GUI側でもApplications ->
Setting -> Language SupportからInstall / Remove Languages... で日本語を追加し、Language for menus and windows:配下のリストから日本語を最上段にDrag and Dropする。
たぶん前半の設定だけでターミナルの文字も日本語で正しく表示されると思うが、一応後半も設定した。

Dockerのインストール

Docker公式のドキュメントにしたがってインストールを行う。
注意するところは、SET UP THE REPOSITORYの4項でarmhfのタブを選択してそれを利用することである。
それ以降は手順に従い、インストールすれば正しく導入される。

Docker Composeのインストール

公式のドキュメントを参考にLinuxタブの内容ではインストールできなかった。
Arm用のdocker-composeが準備されていないのである。
そこで、Alternative install Optionsからインストールを実施。

# pip install docker-compose
Collecting docker-compose
  Using cached docker_compose-1.18.0-py2.py3-none-any.whl
Collecting texttable<0.10,>=0.9.0 (from docker-compose)
  Using cached texttable-0.9.1.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    ImportError: No module named setuptools

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-0A9TJa/texttable/
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

pipのアップデート

バージョンが低いからあげろと言われたので、指示に従う。

# pip install --upgrade pip

再実施

# pip install docker-compose
Collecting docker-compose
  Using cached docker_compose-1.18.0-py2.py3-none-any.whl
Collecting texttable<0.10,>=0.9.0 (from docker-compose)
  Using cached texttable-0.9.1.tar.gz
Could not import setuptools which is required to install from a source distribution.
Please install setuptools.

setuptools不足

setuptoolsが入っていないとのこと

# pip install setuptools

三度目の正直

# pip install docker-compose

インストールの確認

# docker-compose --version
docker-compose version 1.18.0, build 8dd22a9

参考画像

  • ログイン直後
    tinkerboard.PNG

  • docker起動
    tinkerboard_docker.PNG

whale_shark
東京で働いているしがないSE
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away