0
0

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 1 year has passed since last update.

firesignAdvent Calendar 2023

Day 14

WAGO CC100でDockerを使う

Posted at

はじめに

WAGO CC100で扱うDockerコマンドについてまとめました。
コマンドの内容はProvisioning-toolより取得していますので、必要に応じて変更してください。
参考になれば幸いです。

Dockerのインストールなど、セットアップに関しては以下のページがわかりやすいです。

Docker よく使うコマンド

起動しているコンテナの表示:docker ps
全てのコンテナの表示:docker ps -a
取得済みimageの表示:docker images
ネットワークの一覧表示:docker network ls

コンテナの起動:docker start [コンテナID]
コンテナの停止:docker stop [コンテナID]
コンテナの再起動:docker restart [コンテナID]

起動しているコンテナ内で操作する:docker exec -it [コンテナID] /bin/bash

Node-RED

以下のDockerコマンドは、Dockerボリュームを作成するためのものです。
具体的には、名前が "node_red_user_data" のDockerボリュームを作成します。

Dockerボリュームは、コンテナとは独立してデータを格納および管理するために使用されます。
つまり、コンテナを削除してもデータが残ります。

docker volume create --name node_red_user_data; 

以下のDockerコマンドでNode-REDコンテナを起動します。※初回はイメージをダウンロードします。

docker run -d --restart unless-stopped --name wago-node-red --privileged=true --security-opt seccomp:unconfined --user=root --network=host -v node_red_user_data:/data nodered/node-red;

このコマンドは、Dockerを使用してNode-REDというノードベースのフローエディタを実行するためのものです。以下にコマンドの各部分について説明します:

docker run: Dockerコンテナを実行するためのコマンドです。

--restart unless-stopped: Dockerコンテナが停止した場合に、停止理由に関係なく自動的に再起動するように指定します。unless-stoppedは、明示的に停止するまで再起動を続けることを示します。

-d: Dockerコンテナをデタッチモードで実行することを指定します。つまり、コンテナはバックグラウンドで実行されます。

--name wago-node-red: Dockerコンテナに名前 "wago-node-red" を指定します。これにより、コンテナを識別しやすくなります。

--privileged=true: Dockerコンテナを特権モードで実行します。特権モードは、コンテナがホストシステムのリソースに広くアクセスできるようにするもので、セキュリティ上のリスクが伴う場合があります。特権モードを使用する必要があるかどうかは、具体的な要件に依存します。

--security-opt seccomp:unconfined: Seccompプロファイルを "unconfined" に設定します。これは、セキュリティ制約を緩和し、コンテナがより多くのシステムコールを使用できるようにします。

--user=root: コンテナ内のプロセスを "root" ユーザーとして実行します。

--network=host: ホストのネットワーク名前空間を使用してコンテナを実行します。これにより、コンテナはホストのネットワーク設定を共有します。

-v node_red_user_data:/data: ボリュームマウントを設定します。ホストの "node_red_user_data" ボリュームがコンテナ内の "/data" ディレクトリにマウントされます。これにより、Node-REDのユーザーデータを永続的に保存できるようになります。

nodered/node-red: 使用するDockerイメージを指定します。この場合、"nodered/node-red" リポジトリから最新のイメージが使用されます。

このコマンドを使用して、Node-REDコンテナを特定の設定で実行し、必要なセキュリティオプションを設定し、ネットワーク設定をホストと共有し、ユーザーデータを永続的に保存できるようにしています。セキュリティに関する設定は慎重に検討する必要があり、必要に応じて調整することが重要です。

InfluxDB

InfluxDB v1.8がインストールされます。v1.xにはGUIがありません。
GUIが必要な場合はV2.0以降をインストールしましょう。

docker run -d --restart unless-stopped --name=influxdb --network=host -v influx-storage:/etc/influxdb/ arm32v7/influxdb;

Grafana

基本的にはNode-REDと同様ですが、このまま実行するとエラーになります。(2023/10時点)

grafana/grafana:10.1.2のようにバージョン指定してください。

以下のDockerコマンドは、Dockerボリュームを作成するためのものです。
具体的には、名前が "grafana-storage" のDockerボリュームを作成します。

docker volume create grafana-storage;
docker run -d --restart unless-stopped --network=host --name=grafana -v grafana-storage:/var/lib/grafana grafana/grafana;

コンテナ起動後

docker runコマンドで問題が無ければコンテナが起動していると思います。
起動しているかどうかはdocker psで確認できます。

ブラウザからアクセスする。
CC100のIPアドレスが192.168.1.17とすると

Node-REDへのアクセス
http://192.168.1.17:1880
Grafanaへのアクセス
http://192.168.1.17:3000
Portainerへのアクセス
https://192.168.1.17:9443
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?