Dockerを使用した標準的なRocket Poolノードの作成

このセクションでは、標準的なDockerベースのセットアップを使用してRocket Pool Smartnodeスタックをインストールするプロセスを説明します。 これにより、完全なノードを実行するために必要なすべてのものがインストールおよび設定されます。以下が含まれます:

  • Rocket Pool Smartnodeソフトウェア
  • お好みのExecution(旧ETH1)クライアント、または既に管理している既存のクライアントへの接続
  • お好みのConsensus(旧ETH2)クライアント、または既に管理している既存のクライアントへの接続
  • Beacon Chainバリデーション業務を処理するValidatorクライアント
  • (オプション)パフォーマンスとヘルスメトリクスを取得するための監視スタック

実行したいものを指定するだけです!

注意

以下の手順では、システムのターミナルを使用してコマンドを入力および実行する必要があります。 SSHでノードマシンに接続している場合は、既にこれを行っています。 ノードマシン上でデスクトップUIを使用している場合は、以下のコマンドを実行するためにターミナルウィンドウを開く必要があります。 不慣れな場合は、OSの説明を参照してこれを行う方法を学んでください。

プロセス概要

高レベルで見ると、Rocket Poolのインストールには以下が含まれます:

  1. Rocket Poolコマンドラインインターフェース(CLI)をダウンロードする
  2. CLIを使用してSmartnodeスタックをインストールする
  3. ターミナルで使いやすいUIを使用してSmartnodeスタックを設定する
  4. 完了!

開始する前に

Warning

Ubuntuを使用している場合は、Rocket Poolをインストールする前に、dockerがオペレーティングシステムと一緒にインストールされていないことを再確認することをお勧めします。

Ubuntuインストーラーはsnapパッケージマネージャーからdockerを取得しますが、これはSmartnodeによってインストールされるdockerのバージョンと競合します。

snap listを実行して、dockerがインストールされていないことを確認してください。

例えば、これはdockerがインストールされていないマシンでの出力です:

Name    Version        Rev    Tracking       Publisher   Notes
core20  20230308       1852   latest/stable  canonical✓  base
lxd     5.0.2-838e1b2  24322  5.0/stable/…   canonical✓  -
snapd   2.59.1         18933  latest/stable  canonical✓  snapd

そして、これがインストールされていた場合の出力です:

Name    Version        Rev    Tracking       Publisher   Notes
core20  20230308       1852   latest/stable  canonical✓  base
docker  20.10.17       2746   latest/stable  canonical✓  -
lxd     5.0.2-838e1b2  24322  5.0/stable/…   canonical✓  -
snapd   2.59.1         18933  latest/stable  canonical✓  snapd

snap listの出力に表示される場合は、必ず以下のコマンドで削除してください:

sudo systemctl stop snap.docker.dockerd.service

sudo snap remove --purge docker

その後、マシンを再起動することをお勧めします(sudo systemctl reboot

Rocket Pool CLIのダウンロード

CLIをダウンロードする手順は、オペレーティングシステムによって異なります。

注意

以下の手順は、Rocket Poolノードに使用するマシン上で実行する必要があります。 ノードマシンに直接接続されたキーボードとモニターを使用していない場合は、リモートでアクセスし(例:SSH経由)、そのリモート接続を通じてこれらのコマンドを実行する必要があります。

Linux
MacOS

Linuxでは、まずCLIアプリケーションを保存する新しいフォルダを作成します:

mkdir -p ~/bin

次に、CLIをダウンロードします。 これは、システムが使用するアーキテクチャによって異なります。

ヒント

CPUアーキテクチャがわからない場合は、以下のコマンドを実行して確認できます:

uname -m

このコマンドの出力はアーキテクチャを表示します。 x86_64x64およびamd64と同じであることに注意してください。 aarch64arm64と同じであることに注意してください。

x64システムの場合(ほとんどの通常のコンピューター):

wget https://github.com/rocket-pool/smartnode/releases/latest/download/rocketpool-cli-linux-amd64 -O ~/bin/rocketpool

arm64システムの場合:

wget https://github.com/rocket-pool/smartnode/releases/latest/download/rocketpool-cli-linux-arm64 -O ~/bin/rocketpool

実行可能としてマークして、実行権限を付与します:

chmod +x ~/bin/rocketpool

次に、ログアウトして再度ログイン(またはSSHを閉じて再接続)するか、単に再起動してください。 これは、CLIを保存したパス(~/bin)がまだシステムのPATH変数(システムが実行可能ファイルを検索する場所のリスト)に含まれていない可能性があるためです。 ログアウトして再度ログインすると、そこに配置されます。

次に、--versionフラグを使用して実行をテストします。 次のような出力が表示されるはずです:

rocketpool --version
rocketpool version 1.18.10

ヒント

次のようなエラーメッセージが表示される場合、

-bash: /home/user/rocketpool: cannot execute binary file: Exec format error

上記で間違ったバージョンをダウンロードしたことを意味します。 上記のヒントのコマンドを使用して、システムがx64arm64かを確認し、適切なバージョンをダウンロードしてください。 システムがそのどちらでもない場合、Rocket Poolを実行できません。

Smartnodeスタックのインストール

CLIがインストールされたので、Smartnodeスタックをデプロイできます。 これにより、システムにDocker、docker-composeが準備され、Smartnodeファイルが読み込まれて準備が整います。 まだ実際には何も実行されません。それは後で行います。

Smartnodeスタックをデプロイするには、ノードマシンで以下のコマンドを実行する必要があります(ローカルでログインするか、SSHなどを通じてリモート接続する):

rocketpool service install

これにより、Smartnodeスタックの最新バージョンが取得され、セットアップされます。 次のような出力が表示されるはずです(最後に印刷される最新バージョンのリリースノートの上):

エラーメッセージがない場合、インストールは成功しています。 デフォルトでは、ユーザーアカウントのホームフォルダ内の~/.rocketpoolディレクトリに配置されます。

注意

Smartnodeインストーラーは、すべてのプラットフォームでdockerdocker-composeを自動的にインストールできるわけではありません。 インストール中に次のようなエラーメッセージが表示される場合:

Automatic dependency installation for the Mint operating system is not supported.
Please install docker and docker-compose manually, then try again with the '-d' flag to skip OS dependency installation.
Be sure to add yourself to the docker group with 'sudo usermod -aG docker $USER' after installing docker.
Log out and back in, or restart your system after you run this command.

その場合、これら2つを手動でインストールする必要があります。

Dockerは一般的なインストール手順をここで提供しています。

Docker-composeは一般的なインストール手順をここで提供しています。

両方がインストールされたら、必ずユーザーアカウントにDockerを使用する権限を付与してください:

sudo usermod -aG docker $USER

最後に、-dフラグを指定してインストーラーを再実行し、Dockerインストールをスキップします:

rocketpool service install -d

この後、ログアウトして再度ログイン、またはSSHセッションを再起動して設定を有効にしてください。

これが完了すると、Smartnodeスタックは実行する準備が整います。

Dockerのストレージ場所の設定

デフォルトでは、Dockerはすべてのコンテナデータをオペレーティングシステムのドライブに保存します。 場合によっては、これは望ましくない動作です。

注意

このデフォルトの動作で問題ない場合は、次のセクションに進んでください。

これを行うには、rootユーザーとして/etc/docker/daemon.jsonという新しいファイルを作成します:

sudo nano /etc/docker/daemon.json

これは最初は空ですが、問題ありません。内容として以下を追加します:

{
  "data-root": "<your external mount point>/docker"
}

ここで、<your external mount point>は他のドライブがマウントされているディレクトリです。

Ctrl+O、Enterを押してファイルを保存し、Ctrl+X、Enterを押してエディタを終了します。

次に、フォルダを作成します:

sudo mkdir -p <your external mount point>/docker

次に、dockerデーモンを再起動して変更を適用します:

sudo systemctl restart docker

その後、Dockerは希望するディスクにデータを保存します。

Smartnodeスタックの設定

インストールプロセスの次のステップは、ノードの初期設定を行うことです。 このプロセスのウォークスルーについては、Rocketpoolの設定セクションに進んでください。