PolymarketClickHouse Workshops

00 セットアップ

macOS または WSL 2 を準備し、ClickHouse Cloud サービスを作成して、1 つの環境ファイルを読み込みます。

Your computer
macOS terminal: Run workshop commands in Terminal using zsh or bash.

ページ上部のヘッダーで macOS または Windows を選択してください。Windows のコマンドは、 ページで明示的に PowerShell と書かれている場合を除き、PowerShell ではなく WSL 2 上の Ubuntu で実行します。

成果

Docker、Git、Python、clickhousectl、ClickHouse クライアント、Cloud サービスが揃い、 .env.polymarket を source 済みの状態になります。preflight が READY を出力します。

ステップ 1 — ラップトップを確認する

Docker Desktop for Mac をインストールします。ターミナルで次を実行します:

docker version
docker compose version
git --version
python3 --version

ステップ 2 — ワークショップのリポジトリを clone する

git clone https://github.com/ClickHouse/ClickHouse_Demos.git
cd ClickHouse_Demos
git switch build-workshop-v1
cd "$(git rev-parse --show-toplevel)/workshop_public/polymarket"
cp .env.polymarket.example .env.polymarket

ブランチの切り替えは必須です。build-workshop-v1 が本番ワークショップの完全なスナップショットです。

以降のコマンドは ClickHouse_Demos/workshop_public/polymarket から実行してください。

ステップ 3 — clickhousectl と ClickHouse クライアントをインストールする

curl https://clickhouse.com/cli | sh
export PATH="$HOME/.local/bin:$PATH"
clickhousectl --version
clickhousectl local use stable
clickhouse client --version

local use はクライアントのバイナリだけをインストールします。データベース サーバーは起動しません。 すべてのクエリは ClickHouse Cloud を対象とします。

ステップ 4 — 認証して Cloud サービスを作成する

対面トレーニングの場合: トレーナーから安全な方法で提供される、受講者ごとの組織 API キーを 使用してください。

対話型ログインなら、シークレットがシェル履歴に残りません:

clickhousectl cloud auth login --interactive
clickhousectl cloud auth status
clickhousectl cloud org list

信頼できる自動化では明示的な形式も使えます:

clickhousectl cloud auth login --api-key <key> --api-secret <secret>

サービスを 1 つ作成します。リージョンはトレーナーが別途指定した場合のみ変更してください:

clickhousectl cloud service create \
  --name polymarket-workshop \
  --provider aws \
  --region ap-southeast-1 \
  --min-replica-memory-gb 8 \
  --max-replica-memory-gb 8 \
  --num-replicas 1 \
  --idle-scaling true \
  --idle-timeout-minutes 15

サービス ID と、一度だけ表示される default ユーザーのパスワードを保存します。準備完了になるまで待ちます:

clickhousectl cloud service list
clickhousectl cloud service get <service-id>

ステップ 5 — .env.polymarket を埋めて source する

サービスの Connect ダイアログを開きます。ホスト名とパスワードをそのまま .env.polymarket に 入力します。ホストに https:// や :8443 を含めないでください。

${EDITOR:-vi} .env.polymarket
set -a; source ./.env.polymarket; set +a

シェルが秘密情報以外の値を読み込めたことを確認します:

printf 'host=%s database=%s mode=%s\n' \
  "$CLICKHOUSE_HOST" "$CLICKHOUSE_DATABASE" "$POLYMARKET_MODE"

期待される結果: Cloud のホスト名、polymarket、live。

ステップ 6 — preflight を実行する

chmod +x ./preflight.sh
./preflight.sh

期待される結果:

READY: Docker, ClickHouse Cloud, Gamma, Data API, and CLOB REST are reachable

Polymarket をブロックするネットワークで fixture モードを使う場合、最後の行は代わりに次になります:

READY: Docker and ClickHouse Cloud are reachable; fixture mode will supply data

Polymarket API のチェックだけが失敗する場合は、 トラブルシューティング の fixture フォールバックを使ってください。

完了条件

  • clickhouse client --version が成功する;
  • clickhousectl cloud service get <service-id> がサービスの準備完了を報告する;
  • printf が期待どおりの host/database/mode を表示する; および
  • ./preflight.sh が READY を出力する。

次: 監視する市場を見つける。

このページの内容

Track your progress?

Optional. We email a link to confirm your address; progress records once you open it.

Please use your work email address, not a personal one.

Progress tracking also requires accepting the current Terms of Service in Privacy settings.

JA