VPSにDockerをインストールしてiPhoneから開発環境を構築する

DockerVPS開発環境ClaushiPhone開発

VPSにDockerを入れて、ローカルと同じ開発環境をiPhoneから作る

はじめに

VPSを借りたら次にやりたいことといえば、開発環境の整備だ。Dockerを使えば、ローカルPCと全く同じ構成をVPS上に再現できる。docker compose up 一発でサービスが立ち上がり、データベースも、バックエンドも、フロントエンドも全部まとめて動く。

そしてこの作業こそ、Claushのバックグラウンド処理が最も輝く場面だ。Dockerのインストールやイメージのビルドは数分〜数十分かかることがある。その間ずっとターミナルを眺めている必要はない。Claushに「終わったらSlackに通知して」と伝えるだけで、iPhoneをポケットにしまってしまえばいい。


DockerをVPSにインストールする

Ubuntu/Debian系のVPSであれば、以下のコマンドでインストールできる。

# 古いバージョンの削除(クリーンな状態にする)
sudo apt remove docker docker-engine docker.io containerd runc 2>/dev/null

# 必要なパッケージのインストール
sudo apt update && sudo apt install -y ca-certificates curl gnupg

# DockerのGPGキーを追加
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
  sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# リポジトリを追加
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
  https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list

# Dockerのインストール
sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

インストールには数分かかる。ここでClaushに指示を出して、通知を待てばいい。

「Dockerをインストールして、終わったらSlackに通知して」


なぜバックグラウンド処理+通知が重要なのか

Dockerのインストールだけなら数分で終わる。しかし実際の開発では、もっと時間のかかる作業がある。

作業所要時間の目安
Dockerインストール2〜5分
イメージのpull(postgres, nginxなど)1〜3分
イメージのbuild(Dockerfileから)5〜30分以上
npm install / pip install3〜10分
CI/CDパイプラインの実行10〜60分

これらの間、ずっとターミナルを監視するのは時間の無駄だ。

Claushなら一言で解決する。

「docker compose build してから compose up -d して、全部終わったらSlackに通知して」

あとはiPhoneをポケットに入れて、コーヒーでも飲んでいればいい。通知が来た瞬間に開発を再開できる。


Docker Composeで開発環境を立ち上げる

実際のプロジェクトでは docker-compose.yml を使って複数のサービスを一括管理する。

# docker-compose.yml の例
services:
  app:
    build: .
    ports:
      - "3000:3000"
    depends_on:
      - db
  db:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: password
    volumes:
      - pgdata:/var/lib/postgresql/data

volumes:
  pgdata:

起動は一コマンドだ。

docker compose up -d

これもClaushに任せられる。

「docker compose up -d して、コンテナが全部起動したか確認してから通知して」


ローカルと同じ環境がVPSに完成する

Dockerを使う最大のメリットは環境の再現性だ。

  • ローカルで動いたものが、VPSでも必ず動く
  • チームメンバーと全く同じ環境を共有できる
  • OSに依存しない(Ubuntuでも、Debianでも同じ)

そしてClaushがあれば、その環境構築をiPhone一台から操作できる。


まとめ

内容
やることVPSにDockerをインストールし、docker-compose.ymlで環境を構築
時間がかかる作業インストール・イメージbuild・npm installなど
Claushの使い方「〜して、終わったらSlackに通知して」の一言で任せる
メリットローカルと同じ環境・iPhoneから操作・待ち時間ゼロ

時間のかかる作業こそ、Claushのバックグラウンド処理に任せるべき場面だ。通知が来るまで、別のことをしていればいい。