AnsibleでRaspberry Piの環境を自動構築する


目的

Raspberry Piのセットアップを毎回やるのがめんどくさいので、Ansibleを使って初期セットアップをします。

ついでにWordPress環境も構築しています。

動作環境と準備

Raspberry Piは以下の環境を使用しています。

  • 機体:Raspberry Pi 3 Model B
  • OS:Raspbian STRETCH WITH DESKTOP(Release date:2017-09-07)

SDカードにOSイメージを書き込んだ際にbootフォルダにsshファイルを作成しておくと、
初期状態でSSHが有効になり、ディスプレイやキーボード無しでセットアップが可能です。

詳細は以下のURLに記載されています。

できること

  • LOCALE設定(ja_JP.UTF-8)
  • タイムゾーン設定(Asia/Tokyo)
  • apt-get upgrade & update
  • Apache2インストール
  • PHPインストール
  • MySQLインストール
  • WordPressインストール

Ansibleの実行

今回作成したAnsibleのPlaybookをGithubに置いています。
このPlaybookを使って以下の手順でRaspberryの初期設定とWordPress環境が構築できます。


  1. Raspberry Piにssh接続するためにhostsにRaspberry PiのIPを追記してください。

    [raspberry-pi]
    XX.XX.XX.XX # set your environment
    
  2. Ansibleのコマンドを実行して、SSHのパスワードを入力してください。SSH経由で環境構築が進みます。

    $ ansible-playbook site.yml -v --ask-pass -u pi
    
  3. ついでに構築したWordPress環境のセットアップもします。

    http://(Raspberry PiのIPアドレス)/wordpress/wp-admin/setup-config.php
    

  4. WordPressの環境ができました。

所感

ラズパイの動作性能が低いので初期状態から全てのインストールを実行すると2時間くらいかかりますのでやっぱり時間はかかります。けど、自動でできるから放置できるので楽にはなると思います。