Welcome

PLCnext へのDocker(balenaEngine)
導入手順
Rev 1.1

PLCnext への Docker (Balena Engine) 導入手順

AgendabalenaEngine とは操作の準備
balenaEngine のインストール
コンテナ実行例: Hello World
コンテナ実行例: Ubuntu
補足1: よく使用する Docker (balenaEngine) コマンド
補足2: Linux root 権限作成方法

2

Name of the speaker / title of the presentation / date / confidentiality classbalenaEngine とは▪ balenaEngine は、組み込みや IoT のユースケース向けに開発された、Docker コンテナと互換性のあるコンテナエンジンです。(下記 URLより引用、翻訳)
https://engine-docs.balena.io/▪ IoT に特化して軽量化するうえで必要ないと判断された機能は、省略されています。
Docker にあって balenaEngine に無い機能については、上記の URLをご参照ください。

3

操作の準備全体の構成▪ PLCnext Control (FW version 2023.0.0 以降)
当文書では AXC F 2152 を例にとって解説します。
▪ PC (Windows 10 or 11)・・・SSH アクセス用ターミナルソフト (Putty, Teraterm など)▪ インターネットアクセス環境

Ethernet ケーブル
インターネット

PC (Windows 10 or 11)
PLCnext Control

4操作の準備WBM (Web Based Management) 画面へのアクセス：認証▪ インターネット接続用のゲートウェイ設定を行うため、PLCnext コントローラの web 画面へアクセスします。
(デフォルトの IP アドレス: 192.168.1.10)(AXC F 2152 以外をご使用の場合は、各ユーザマニュアル等をご参照ください)▪ Username: admin▪ Password: PLCnext コントローラ表面に印字されています。
英数字 8 桁です。

▪ Username と Password を入力後、Login ボタンを押してください。
5

操作の準備WBM (Web Based Management) 画面へのアクセス：メニュー▪ 画面左のメニューからConfiguration > Network を選択します。

6

操作の準備ゲートウェイ アドレスの設定▪ Default Gateway へ ゲート
ウェイの IP アドレスを入力します。
(AXC F 2152 以外をご使用の場合は、各ユーザマニュアル等をご参照ください)▪ Apply and reboot をクリックします。
7

balenaEngine のインストール

balenaEngine のダウンロード▪ 以下の手順で PLCnext Store (https://www.plcnextstore.com/world/) から
balenaEngine-DockerForIOT-***アプリをダウンロード※1します。
※1: ダウンロードには、PLCnext Store へのユーザー登録 (無料) が必要です。

1. Docker と入力

2. 使用するハードウエアをチェック

8

3.

をクリック

balenaEngine のインストール(続き) balenaEngine のダウンロード
4. balenaEngine-DockerForIOT-***※2をクリック
5. 最新バージョンを選択

6. DOWNLOAD をクリック※2 「***」は、
AXC F 1152/2152 の場合は ARM、AXC F 3152, EPC 1502/1522 及び RFC 4072s では x86 が入ります。
9balenaEngine のインストール

WBM (Web Based Management) 画面へのアクセス：認証▪ ダウンロードしたアプリをインストールするため、 PLCnext
コントローラの web 画面へアクセスします。
(デフォルトの IP アドレス: 192.168.1.10)(AXC F 2152 以外をご使用の場合は、各ユーザマニュアル等をご参照ください)▪ Username: admin▪ Password: PLCnext コントローラ表面に印字されています。
英数字 8 桁です。

▪ Username と Password を入力後、Login ボタンを押してください。
10

balenaEngine のインストール

WBM (Web Based Management) 画面へのアクセス：メニュー▪ 画面左のメニューからAdministration > PLCnext Appsを選択します。

11

balenaEngine のインストール

アプリ管理用画面▪ 以下のようなアプリ管理用画面が表示されたら Install Apps ボタンをクリックします。

12

balenaEngine のインストール

インストール用ファイルの選択▪ ファイル選択画面が表示されたら先程ダウンロードしたファイルを選択し、開くボタンをクリックします。

13

balenaEngine のインストール

インストール用ファイルの選択▪ アプリのインストールが開始されます。

14

balenaEngine のインストール

インストール完了▪ インストール完了すると、インストールされたアプリがリストアップされます。

15

balenaEngine のインストール

balenaEngine の動作開始▪ Start ボタンをクリックすると、アプリが開始されます。

16

balenaEngine のインストール

balenaEngine のステータス▪ アプリが開始されると、App Status が RUN に変わります。

17

balenaEngine のインストール

balenaEngine 用コマンドの動作確認▪ Teraterm, Putty 等のターミナルソフトで PLCnext Control へ SSH アクセスし、コマンドライン上でbalena-engine が利用可能となっていることを確認します。

18

balenaEngine のインストール

root 権限で実行する場合▪ balena-engine コマンドは一般ユーザの権限で使用可能です。

▪ 何らかの理由により root ユーザから使用する場合は、パスを新たに通す必要があります。

※root ユーザとしてのログインはデフォルトではできないようになっています。
必要な場合は、巻末の「Linux root 権限作成方法」の手順をご参照ください。

19

コンテナ実行例: Hello World

Docker 公式 hello-world コンテナ
▪ balena-engine run hello-world▪ 自動的に Docker イメージがダウンロードされ、Docker コンテナが作成され、実行されます。

20

コンテナ実行例: Ubuntu

Ubuntu 18.04 コンテナの実行▪ balena-engine pull ubuntu:18.04
まず、ubuntu 18.04 のイメージをダウンロードします。

▪ balena-engine run -it -d --name my-ubuntu ubuntu:18.04
ubuntu 18.04 のイメージから my-ubuntu という名前のコンテナを作り、実行します。

▪ balena-engine exec -it my-ubuntu /bin/bash
実行中の my-ubuntu コンテナにて、/bin/bash を実行します。

21

補足1: よく使用する Docker (balenaEngine) コマンド

コンテナ操作 (1)▪ コンテナを全て表示$ balena-engine ps -a
もしくは$ balena-engine container ls –a▪ コンテナを止める$ balena-engine container stop <コンテナ名 or コンテナ ID>
例: balena-engine container stop my-ubuntu▪ 停止中のコンテナの再実行$ balena-engine container start <コンテナ名 or コンテナ ID>
例: balena-engine container start my-ubuntu

22補足1: よく使用する Docker (balenaEngine) コマンド

コンテナ操作 (2)▪ 実行中のコンテナ内の bash コンソールに入る$ balena-engine container exec -it <コンテナ名 or コンテナ ID> bash
例: balena-engine container exec -it my-ubuntu bash-it ― 標準入出力をコンテナに結びつける(キー入力する場合)。
-i ― 標準入出力をコンテナに結びつける(キー入力しない場合)。
▪ コンテナを全て消す$ balena-engine rm `balena-engine ps -a -q`23

補足1: よく使用する Docker (balenaEngine) コマンド

イメージ操作▪ イメージ一覧、イメージサイズを確認する$ balena-engine images▪ イメージを削除※する$ balena-engine rmi <イメージ ID>
例: balena-engine rmi 38d49488e3b0▪ イメージを全て削除※する$ balena-engine rmi `balena-engine images -q`※コンテナを削除してからイメージを削除すること。

24

補足1: よく使用する Docker (balenaEngine) コマンド

イメージ実行関連▪ イメージを Docker Hub からダウンロード (pull)$ balena-engine pull [OPTIONS] <イメージ名> [:TAG]
例: balena-engine pull ubuntu:18.04▪ イメージの単純な実行$ balena-engine run <イメージ名>
例: balena-engine run hello-world▪ イメージからコンテナを作成して実行し、コンテナ内の bash へ入る。
イメージがローカルになければ Docker Hub から自動的にダウンロードする。
$ balena-engine container run -it -d --name <作成するコンテナ名を指定> <イメージ名> [:TAG]
例: balena-engine container run -it -d --name ubuntu1804 ubuntu:18.04▪ その他、多数の Docker (balena-engine) コマンドが使用可能です。詳しくは Docker や balenaEngineのサイトをご参照ください。
25

補足2: Linux root 権限作成方法

SSH でログイン▪ PLCnext Control へ ssh アクセスし、admin でログインします。

26

補足2: Linux root 権限作成方法

passwd コマンドの実行▪ 以下のコマンドを入力します。
sudo passwd root27

補足2: Linux root 権限作成方法

admin 用パスワードの入力▪ パスワードを聞かれるので、admin のパスワードを入力します。

28

補足2: Linux root 権限作成方法

root 用パスワードの設定▪ Root 用のパスワードを聞かれるので、Root 用の新しいパスワードを入力します。
パスワードの再入力を求められるので、再度入力します。

29

補足2: Linux root 権限作成方法

root 用パスワードの設定完了▪ 設定完了すると、成功を示すメッセージが表示されます。

30

補足2: Linux root 権限作成方法

root ログインの動作確認▪ su コマンドを入力し、新しく設定した root 用パスワードで root 権限に切り替わります。

31

補足2: Linux root 権限作成方法

root ログインの終了▪ root 権限を抜けたい場合、exit コマンドを入力します。

32