Gift history
Please access after login.


Wait a moment...

Symbol メインネット HTTPS対応 https-portal

3131
8
2021-03-24 16:35:48
1000 mXYM
(1)

symbol-bootstrap の dockerファイルに修正を加えず、別の docker-compose から https-portal を立ち上げる。

以下のようなディレクトリ構成になります。
├ symbol-bootstrap/
├ https-portal/
 └docker-compose.yml

$ mkdir https-portal
$ cd https-portal

docker-compose ファイルの作成

$ vi docker-compose.yml

「 aaa.bbb.ccc 」の箇所は自分の FQDN ( ホスト名 + ドメイン名 ) に変更

version: '3'
services:
    https-portal:
        container_name: https-portal
        image: 'steveltn/https-portal:1'
        ports:
            - '80:80'
            - '3001:443'
        restart: 'on-failure:2'
        environment:
            DOMAINS: 'aaa.bbb.ccc -> http://rest-gateway:3000'
            #STAGE: 'production' #テストが完了するまで production にはしないように
            #LISTEN_IPV6: 'true'  #IPv6対応
            WEBSOCKET: 'true' #Websocket対応
        volumes:
            - 'https-portal-data:/var/lib/https-portal'
# HTTPS-PORTALアップデート時に再サインするのを避ける
volumes:
    https-portal-data:
# bootstrapのdocker containerへ接続可能にする
networks:
    default:
        external:
            name: 'docker_default'

networks: のneme: docker_default は

$ docker network ls

で一覧取得

$ docker network inspect docker_default

でsymbol-bootstrap/target/docker/docker-compose.yml のサービスが稼働しているか確認。

https-portal を起動する前に symbol-bootstrap のサービスを起動させておくこと。

https-portal 起動

$ docker-compose up

初回起動時は証明書取得に時間がかかります。

dockerプロセスがちゃんと動いているか確認

$ docker ps
CONTAINER ID        IMAGE                                      COMMAND                  CREATED             STATUS              PORTS                                       NAMES
5f8c196c0e53        steveltn/https-portal:1                    "/init"                  6 seconds ago       Up 4 seconds        0.0.0.0:80->80/tcp, 0.0.0.0:3001->443/tcp   https-portal
7cac52326fd8        symbolplatform/symbol-server:gcc-1.0.0.0   "/bin/bash /symbol-c…"   2 minutes ago       Up 2 minutes        0.0.0.0:7900->7900/tcp                      node
c3a7ff1e1cb0        symbolplatform/symbol-rest:2.3.5           "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        0.0.0.0:3000->3000/tcp                      rest-gateway
11d1d7e6b4ee        symbolplatform/symbol-server:gcc-1.0.0.0   "/bin/bash /symbol-c…"   2 minutes ago       Up 2 minutes                                                    broker
1f82b359c9b7        mongo:4.4.3-bionic                         "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        27017/tcp                                   db

 

ブラウザで https://aaa.bbb.ccc:3001/node/info にアクセス

https-portal の STAGEがProductuion ではないため、自己証明書の状態。ブラウザで警告が出ると思いますがそのままアクセスし、正常に表示されているか確認。

正常に稼働することを確認できたら

Ctl + C でプロセスを終了

$ vi docker-compose.yml

STAGE の 前の # を削除 

STAGE: 'production'
$ docker-compose up -d 

 ブラウザで https://aaa.bbb.ccc:3001/node/info にアクセス

今度は警告なしで有効な証明書になっています。

IPv6 や WebSocket にも手軽に対応できるので本家のドキュメントを読んでお試しください。
エラー等が出る場合は -d なし $ docker-compose up
や 
$ docker-compose logs -f https-portal
でログを確認しましょう。

symbol-bootstrap バージョンアップのときは、
まず https-portal を停止させてから、symbol-bootstrap を停止。
バージョンアップ後は symbol-bootstrap で起動後に https-portal を起動。

バージョンアップ手順 
https-portal停止
$ cd https-portal
$ docker-compose down

symbol-bootstrap停止
$ cd symbol-mainnet/
$ symbol-bootstrap stop

ターゲットディレクトリバックアップ
$ cp -r target target.BAK
( ハーベスターのデータをバックアップ )
$ cp target/nodes/node/data/harvester.dat .harvester.dat.BAK

サーバーアップデート(必要な場合再起動)
$ sudo apt update
$ sudo apt upgrade
( $ sudo reboot )

$ cd symbol-bootstrap
$ sudo npm install -g symbol-bootstrap

npm notice
npm notice New minor version of npm available! 7.16.0 -> 7.18.1
npm notice Changelog: https://github.com/npm/cli/releases/tag/v7.18.1
npm notice Run npm install -g npm@7.18.1 to update!
npm notice
こんな警告が出たら指示どおりアップデートしましょう
$ sudo npm install -g npm@7.18.1

バージョン確認
$ symbol-bootstrap -v
設定アップグレードして起動
$ symbol-bootstrap start -p mainnet -a dual -c [ preset.yml ] --upgrade -d 
起動確認
$ symbol-bootstrap healthCheck

https-portal 起動
$ cd https-portal
$ docker-compose up -d

以下のようなエラーが出た場合はゾンビコンテナ削除
Starting https-portal ... error
ERROR: for https-portal  Cannot start service https-portal: network 7bffabf49a3edd592977e9417a080b3d6b9c1046836f5e707bf6fd8ab54e729d not found

$ docker ps -a
4dfecc54a655   steveltn/https-portal:1                          "/init"                  4 days ago      Exited (128) 8 minutes ago                                      https-portal
$ docker rm 4dfecc54a655

それでもエラーが出る場合、https-portal のボリュームデータリセット
$ docker-compose down -v
$ docker-compose up -d

ブラウザから確認
https://aaa.bbb.ccc:3001/node/server

Writer
NEM/Symbolで何か作る。

Comment
Login required to post comment
Loading...
https://symbol-sakura-16.next-web-technology.com:3001,https://symbol.harvest-monitor.com:3001,https://hideyoshi-node.net:3001,https://harvest-01.symbol.farm:3001,https://criptian-xym-node.net:3001,https://35665.xym.stir-hosyu.com:3001,https://yuna.keshet.finance:3001,https://cryptocat-xym-node.com:3001,https://misaki-xym.com:3001,https://ik1-305-12844.vs.sakura.ne.jp:3001,https://17107.xym.stir-hosyu.com:3001,https://23639.xym.stir-hosyu.com:3001,https://sym-main-01.opening-line.jp:3001,https://sym-main-02.opening-line.jp:3001,https://sym-main-03.opening-line.jp:3001,https://sym-main-04.opening-line.jp:3001,https://sym-main-05.opening-line.jp:3001,https://sym-main-06.opening-line.jp:3001,https://sym-main-07.opening-line.jp:3001,https://sym-main-08.opening-line.jp:3001,https://sym-main-09.opening-line.jp:3001,https://sym-main-10.opening-line.jp:3001,https://symbol-node-01.kokichi.tokyo:3001,https://50038.xym.stir-hosyu.com:3001,https://27423.xym.stir-hosyu.com:3001,https://angel.vistiel-arch.jp:3001,https://xym.stakeme.tokyo:3001,https://00-symbol-node.yagiyoshi.com:3001,
6BED913FA20223F8,051FAEC15105C808,73019335A785A3AE,5289A9B0DBB7EB25,6B245EAF1302E444,2C4A4893229DD0A9,63509D495CAD7B80,481D74291A71FD1F,009388A38C91A8B2,4E94920841641B77,027C6AD49DE2C9F9,