3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

balenaOSをRaspberry Pi3にインストールする方法

Last updated at Posted at 2019-06-16

以前に balena Dashとラズパイ3でWebフレームを作る という記事を書いたが、
久々にbalenaOSをラズパイ3にインストールしたら、完全に忘れてたので記録しておく。

参考url

準備

必要なデバイス

  • ラズパイ3
  • SDカード 16GB以上
  • HDMIモニタ

必要なソフトウェア

  • balenaEtcher
  • Docker
  • balena CLI

注意

ラズパイzeroなどのデバイス(1GB未満のRAM)ではbalenaCloudが動かない
ラズパイ3がオススメ

ラズベリーパイのセットアップ

ステップ1 - 無料のbalenaCloudアカウントにサインアップする

ここからbalenaCloudアカウントを作成しておく。
GitHubまたはGoogleアカウントで簡単に作成できる。
https://dashboard.balena-cloud.com/signup

ステップ2 - balenaCloudにアプリケーションを作成する

balenaCloudダッシュボードに移動する
Create applicationからデバイスを追加する
Raspberry Pi3を選ぶ

ステップ3 - balenaCloudにデバイスを追加してOSをダウンロードする

アプリケーションが作成されたら、[Add Device]ボタンからデバイスを追加する。

SELECT DEVICE TYPE はRaspberry Pi3
SELECT BALENAOS VERSION は 最新っぽい v2.36+rev2(reccomended) を選択した。

ここでダウンロードされるのが balenaOS である。

ステップ4 - SDカードにOSをフラッシュしてインストールする

OSイメージがダウンロードされたら、SDカードにフラッシュする。
これにはbalenaEtcherが便利に使える

SDカードをRaspberry Piに挿入する前にやること

実はこのままラズパイを起動してもうまく動作しないため、
GPUにメモリを多く割り当てるための記述をconfig.txtに追加しなければならない。

スクリーンショット 2019-06-15 15.16.49.png

config.txt にこの行を追加する。

gpu_mem_512=128

理由は本家のドキュメントを抜粋

WPEプロジェクトはRaspberry PiのハードウェアGPUアクセラレーションを利用するため、balenaDashを実行するには、デフォルトで設定されているよりも少し多くのメモリをGPUに割り当てる必要があります。balenaCloudでデバイスを起動して実行しているので、このように設定値をリモートで設定できるという利点が/boot/config.txtありますが、SDカードのファイルを直接編集して指定することも同様に可能です。

つまりどういうことか?

デフォルトだとGPUメモリは16になっており、そのままだと少なすぎるらしい。

GPUメモリ16のまま起動すると、balenaCloudの管理画面には以下のエラーログが出まくる。

wpe  * failed to add service - already in use?
wpe  WARNING: WebProcess crashed: restarting it

これを回避するため、Raspberry Pi3用にGPUメモリを128と指定してGPUメモリを確保しておく。

ちなみに、balenaCloud管理画面からリモートで変更できるようだが、試しても効果がなく延々と上記エラーログが出ていた。
sdカードを直接書き換えるのがよい。

デバイスが初めて起動した後に、balenaCloudのダッシュボードを表示する。
しばらくすると、ダッシュボードにデバイスがオンラインとして表示される。

ステップ5 - コードをデプロイする

ここまでRaspberry Piを起動して、balenaCloudに接続されたのをダッシュボードから確認できた。
この後は、アプリケーションコードをプッシュして機能させる必要がある。
これはbalena CLIツールを使って行う

balena CLIツールをインストールする

balena CLIをつかって、balenaCloud経由でRaspberry Piにコードを送ることができる。

インストール手順はこちら
https://github.com/balena-io/balena-cli/blob/master/INSTALL.md

公式手順にはnpmでインストールするようだが、Macならbrewでもインストールできるようだ

brew install balena-cli

balena CLIをインストールしたら、balena loginでbalenaCloudにloginする

$ balena login
 _            _
| |__   __ _ | |  ____  _ __    __ _
| '_ \ / _` || | / __ \| '_ \  / _` |
| |_) | (_) || ||  ___/| | | || (_) |
|_.__/ \__,_||_| \____/|_| |_| \__,_|


Logging in to balena-cloud.com
? How would you like to login? (Use arrow keys)
❯ Web authorization (recommended)
  Credentials
  Authentication token
  I don't have a balena account!

Webブラウザでログインボタンが表示されるので押す

GithubからbalenaDashプロジェクトをダウンロードする

まず以下にアクセス
https://github.com/balena-io-projects/balena-dash

balena-dashをgit cloneする

balena Cloudにデプロイするコードを取得するため、以下をcloneする。

git clone https://github.com/balena-io-projects/balena-dash.git

cloneしたらディレクトリに移動して、balena cliでインストールしたbalenaコマンドでpushする。

$ cd balena-dash

$ balena push ikemura

※この時、Dockerがインストールされてる必要がある

以下の画面のように馬?ペガサス?がターミナルに表示されたらデプロイ成功している。

スクリーンショット 2019-06-15 13.05.36.png

ここまでくるとラズパイ側の作業は完了

あとはbalenaCloudのダッシュボード画面で操作する。

balenaCloudのダッシュボードでWPE_URLパラメータを追加

サイドメニューのDEVICE VARIABLESを表示させ、[Add variable]ボタンから以下を設定する。
NAME:WPE_URL
VALUE:https://www.yout-ube.com/watch?v=dQw4w9WgXcQ

スクリーンショット 2019-06-16 19.27.08.png

追加するとbalenaCloud側で自動的に処理が始まり、ラズパイ3にYouTubeの動画が再生される。

出来上がったもの

小型モニタをつないで、デジタルサイネージとしてCO2濃度を表示させている。
20190626_172913.jpg
20190626_173419.jpg

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?