4. インストール

4.1. 配布物の確認

同梱物の以下のファイルを、作業フォルダにコピーします。

  • manufacia_x.x.x-gpu.tar.gz  (x.x.x は配布されたシステムのバージョン番号です。以降のコマンド入力例も同様です。)

  • mosquitto_1.6.2.tar.gz

  • postgres_10.5.tar.gz

  • redis_5.0.tar.gz

4.2. 解凍とイメージのロード

$ gunzip manufacia_x.x.x-gpu.tar.gz && docker load -i manufacia_x.x.x-gpu.tar
$ gunzip mosquitto_1.6.2.tar.gz && docker load -i mosquitto_1.6.2.tar
$ gunzip postgres_10.5.tar.gz && docker load -i postgres_10.5.tar
$ gunzip redis_5.0.tar.gz && docker load -i redis_5.0.tar

4.3. dockerイメージの登録確認

下記のイメージが出力されていることを確認します。

$ docker images
...
manufacia x.x.x-gpu 73d8cc60a81a 24 hours ago 5.61GB
redis 5.0-alpine 07103bda7d12 3 months ago 51.6MB
postgres 10.5-alpine 294f651dec48 9 months ago 71.6MB
eclipse-mosquitto 1.6.2 502279616d17 7 weeks ago 5.07MB
...

4.4. セットアップ

下記コマンドを実行します。

$ docker run --rm manufacia:x.x.x-gpu install-manufacia | bash

正常終了すると、実行ファイルが保存されているパスが出力されるので、環境変数PATHにそのパスを以下の要領で追加します。

$ PATH="$HOME/.manufacia/bin:$PATH"

この設定を行うと manufacia_ctrl コマンドが使えるようになります。

$ manufacia-ctrl
Usage: manufacia-ctrl [COMMAND] ...
Available commands:
current
versions
path
start

表:manufacia_ctrlコマンド一覧

コマンド

説明

current

現在有効となっているMANUFACIAのバージョンを表示します。

versions

インストール可能な状態になっているMANUFACIAを一覧表示します。

path

現在有効となっているMANUFACIAのpathを表示します。

start

MANUFACIAを起動します。

4.5. ホストマシンのIPアドレス確認

$ hostname -I
192.168.xxx.xxx 172.17.0.1 172.18.0.1 10.1.0.1

または

$ ifconfig

環境により異なるので、不明な場合はシステム管理者に確認してください。ここでは、ホストマシンに割り当てられているIPアドレスは 192.168.xxx.xxx と想定します。このIPアドレスを環境変数 THIS_HOST に設定します。

$ export THIS_HOST=192.168.xxx.xxx

4.6. インストール

MANUFACIAを初めてインストールする場合には、ここに書かれている手順を実行します。初めてかどうか不明な場合は下記のコマンドを実行した結果 manufacia_* という名前を持つコンテナが存在していないことを確認します。

$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED
STATUS PORTS NAMES

MANUFACIAはnvidia-dockerが動作している環境で動作します。MANUFACIAのインストール前に、まずnvidia-dockerが動作する事を確認します。

$ sudo docker run --runtime=nvidia --rm nvidia/cuda:11.1-base nvidia-smi

アプリケーションをインストールします。

$ manufacia-ctrl start

MANUFACIAのDockerコンテナが起動していることを確認します。docker psコマンドで、以下の6個のコンテナのSTATUS列が Up 状態が確認出来れば正常です。

  • manufacia_app_1

  • manufacia_jarngreipr_1

  • manufacia_broker_1

  • manufacia_db_1

  • manufacia_redis_1

  • manufacia_frontend_1

$ docker ps
CONTAINER ID   IMAGE                    COMMAND                   CREATED         STATUS         PORTS                                                     NAMES
d06495da0e54   manufacia:x.x.x-gpu      "supervisord --nodae..."  38 minutes ago  Up 38 minutes  0.0.0.0:3100-3101-\>3100-3101/tcp, 0.0.0.0:3122-\>22/tcp  manufacia_app_1
63df1772426c   manufacia:x.x.x-gpu      "jarngreipr serve --..."  38 minutes ago  Up 38 minutes  0.0.0.0:3280-\>8080/tcp                                   manufacia_jarngreipr_1
a6c3cbdb3e60   postgres:10.5-alpine     "docker-entrypoint.s..."  38 minutes ago  Up 38 minutes  0.0.0.0:1883-\>1883/tcp, 0.0.0.0:32780-\>9001/tcp         manufacia_broker_1
13b6b0ae19dc   eclipse-mosquitto:1.6.2  "/docker-entrypoint...."  38 minutes ago  Up 38 minutes  5432/tcp                                                  manufacia_db_1
cda3291bb252   manufacia:x.x.x-gpu      "sh -c 'inject-env f..."  38 minutes ago  Up 38 minutes  0.0.0.0:3200-\>5000/tcp                                   manufacia_frontend_1
68e03b9681db   redis:5.0-alpine         "docker-entrypoint.s..."  38 minutes ago  Up 38 minutes  6379/tcp                                                  manufacia_redis_1