見出し画像

WebARENA Indigoを使ってDockerでノードを建てる

NTTの格安VPS WebArena Indigoを使ってDockerでノードを建てるためのメモです。
基本、UbuntuでDocker走らせるってだけなので、分かる人には意味のない記事です。

この記事を読むと、サーバー建てて、Dockerでノードを建てるための準備が出来上がります。
そのあとは色んなノードをDockerで動かすんですが、その部分はプロジェクトによってマチマチ。ただいずれにしても、この記事でDocker動かす準備が終わっていれば、めちゃ簡単だと思います。
一応今回もDocker動かすところまで通しでやります。

対象読者としては、Ubuntuとか触ったことある方が望ましいですが、たぶん何も分からなくても、記事に従えば動かせます。

【WebARENA Indigoって?】


NTTが提供しているVPSサービスです。要はサーバーを貸してくれるところです。国内の中では一番安い気がします。
料金は以下の感じ(2023/02/17時点)
時間従量料金があるのがいい感じ。1時間、2時間とかで建ててみて、ダメなら潰すとかの使い方ができます。

ちなみに今回使ってませんが、海外だとCONTABOというのが安そうです。
メモリ30GBクラスで比べるとWebARENAより断然安い。
料金体系が結構違って、時間従量課金がないんです。あと初期構築費用が8.49ドルかかる。

【Dockerって?】

ググれば正確な説明は出てきますが、要はめちゃくちゃ簡単にノードを建てるための基盤です。
今回だと、UbuntuサーバーをWebARENAで借りるんですが、その上でノード(仮想サーバー)を動かすイメージです。

ノード建てるのって謎のコマンドをいっぱい打つ必要があって、謎のエラーもいっぱい出るから難しいんでしょ?ってイメージある気がしますが、Dockerだとほとんど何もしなくてもポンっとノード建てられます。

【WebARENAでDockerを動かす】

■インスタンスを建てる

さっそくやっていきます。WebARENAでVPS(サーバー)を借りて動かします。

SSH Keyを作る
「Create SSH Key」でSSHを作ります。ファイルがダウンロードされるので分かりやすいところにとっておきます。

インスタンスを作る
Instanceのメニューから、「Create Instance」をクリック

Ubuntu 22.04を選択

サイズと、さっき作ったSSH Key、RegionにJapanを選んで、Create Instanceをクリック

その後しばらく待ってInstanceが止まっていたら立ち上げます。

▶インスタンスに接続する
インスタンスのIPアドレスを確認します。

PowerShellで、以下のコマンドで接続します。

ssh ubuntu@{上で確認したIPアドレス} -i {SSH Key作成の時にダウンロードされたファイルのパス\private_key.txt}

繋がればOKです。

■Docker環境のセットアップ

ここに書いてある手順に従いました。

▶Dockerのインストール
PowerShellでつながってる状態で、以下のコマンドを順番に実行します。

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y

▶Dockerのインストール確認
インストールが終わったら確認として以下を実行

docker version

以下のような表示ならOK。
Server: Docker Engine - Community Engine: Version: 20.10.14

あと以下を実行

docker pull hello-world

イメージを取得できていればOK。

■Dockerの実行

ここまででDockerでサーバー環境を実行できる状態になりました。

ここまで書いておいてなんですが、Dockerの実行はノード建てるために、各ノードの運営からドキュメントが用意されていて、数行のコマンド実行でできるので、書くことないですね…。

簡単さを示すために、最近建てたElixirってやつだと、以下の3行のコマンドでDockerを走らせられました。最初のコマンドでファイルを取得した後にファイル内をちょこちょこと編集はしましたが。

wget https://testnet-1-files.elixir.finance/Dockerfile
docker build . -f Dockerfile -t elixir-validator
docker run -it --name ev elixir-validator

【まとめ】

いったんDocker環境作っておけば、Dockerの実行自体はコマンド3行ぐらいでできちゃいます。
ということで、簡単にDockerでサーバー建てるというのはできるので、めんどくさがらずにちゃんとやりましょう、主に自分。

この記事が気に入ったらサポートをしてみませんか?