Raspberry Pi 3 Model BにDocker導入
どうも,筆者です.
久しぶりの更新となる.
目的
Raspberry Pi 3 Model B に Docker を導入し,Nginx,MySQL,django を用いて,名簿作成システムを構築する.
実施内容
今回は,Raspberry Pi 3 Model B で下記の設定を行う.
- Docker のインストール
- Docker-Compose のインストール
Dockerのインストール
Raspberry Pi 3 Model B の環境を以下に示す.
cat /etc/os-release #PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)" #NAME="Raspbian GNU/Linux" #VERSION_ID="8" #VERSION="8 (jessie)" #ID=raspbian #ID_LIKE=debian #HOME_URL="http://www.raspbian.org/" #SUPPORT_URL="http://www.raspbian.org/RaspbianForums" #BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
下記のコマンドで Docker をインストールする. 参考サイト
# Docker のインストール sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl gnupg2 software-properties-common curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - sudo apt-key fingerprint 0EBFCD88 echo "deb [arch=armhf] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list sudo apt-get update sudo apt-get install -y docker-ce # バージョンチェック(実行にはroot権限が必要) sudo docker version # 出力例 #Client: # Version: 18.06.3-ce # API version: 1.38 # Go version: go1.10.3 # Git commit: d7080c1 # Built: Wed Feb 20 02:48:01 2019 # OS/Arch: linux/arm # Experimental: false # #Server: # Engine: # Version: 18.06.3-ce # API version: 1.38 (minimum version 1.12) # Go version: go1.10.3 # Git commit: d7080c1 # Built: Wed Feb 20 02:43:39 2019 # OS/Arch: linux/arm # Experimental: false # ユーザを docker グループに追加(root権限が不要になる) sudo usermod -aG docker ${USER} # 一度ログアウトし,再度ログイン exit ### ログイン処理 ### # 再度,バージョンを確認 docker version
Docker-Compose のインストール
下記のコマンドで,Docker-Compose のインストールを実施する. 参考サイト
# git のインストール sudo apt-get install -y git # compose を clone git clone https://github.com/docker/compose.git # compose のインストール cd compose git checkout bump-1.23.2 # ブランチの変更 sed -i -e 's:^VENV=/code/.tox/py36:VENV=/code/.venv; python3 -m venv $VENV:' script/build/linux-entrypoint sed -i -e '/requirements-build.txt/ i $VENV/bin/pip install -q -r requirements.txt' script/build/linux-entrypoint docker build -t docker-compose:armhf -f Dockerfile.armhf . # しばらく待つ docker run --rm --entrypoint="script/build/linux-entrypoint" -v $(pwd)/dist:/code/dist -v $(pwd)/.git:/code/.git "docker-compose:armhf" sudo cp dist/docker-compose-Linux-armv7l /usr/local/bin/docker-compose sudo chown root:root /usr/local/bin/docker-compose sudo chmod 0755 /usr/local/bin/docker-compose docker-compose version #docker-compose version 1.23.2, build 1110ad01 #docker-py version: 3.6.0 #CPython version: 3.6.8 #OpenSSL version: OpenSSL 1.1.0j 20 Nov 2018 # イメージの削除 docker rmi $(docker images | grep docker-compose | awk '{print $3;}')
これで,Docker と Docker-Compose が導入できた.次は,Nginx,PostgreSQL,django のイメージの構築を行う.