PolymarketClickHouse Workshops

00 Thiết lập

Chuẩn bị macOS hoặc WSL 2, tạo service ClickHouse Cloud và nạp một file môi trường.

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

Chọn macOS hoặc Windows ở đầu trang. Các câu lệnh cho Windows chạy trong Ubuntu trên WSL 2, không phải PowerShell, trừ khi trang này nói rõ là PowerShell.

Kết quả

Bạn có Docker, Git, Python, clickhousectl, ClickHouse client, một service trên Cloud, và một file .env.polymarket đã được source. Bước preflight in ra READY.

Bước 1 — Kiểm chứng laptop

Cài Docker Desktop for Mac. Trong Terminal, chạy:

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

Bước 2 — Clone repository của workshop

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

Việc chuyển nhánh là bắt buộc: build-workshop-v1 là bản snapshot production hoàn chỉnh của workshop.

Chạy các câu lệnh sau đó từ ClickHouse_Demos/workshop_public/polymarket.

Bước 3 — Cài clickhousectl và ClickHouse client

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

local use chỉ cài binary của client. Nó không khởi chạy một database server; mọi truy vấn đều nhắm tới ClickHouse Cloud.

Bước 4 — Xác thực và tạo service trên Cloud

Đào tạo trực tiếp: dùng API key của tổ chức, cấp riêng cho từng người học, do giảng viên cung cấp một cách an toàn.

Cách đăng nhập tương tác giúp secret không lọt vào lịch sử shell:

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

Tự động hóa đáng tin cậy có thể dùng dạng tường minh:

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

Tạo một service. Chỉ thay đổi region nếu giảng viên chỉ định region khác:

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

Lưu lại service ID và mật khẩu dùng một lần của default user. Chờ đến khi service sẵn sàng:

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

Bước 5 — Điền và source .env.polymarket

Mở hộp thoại Connect của service. Đưa hostname trần và mật khẩu vào .env.polymarket; không đưa https:// hoặc :8443 vào phần host.

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

Xác nhận rằng shell đã nạp các giá trị không phải secret:

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

Mong đợi: hostname của Cloud, polymarket, và live.

Bước 6 — Chạy preflight

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

Mong đợi:

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

Ở chế độ fixture trên một mạng chặn Polymarket, dòng cuối cùng thay vào đó là:

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

Nếu chỉ phần kiểm tra Polymarket API thất bại, hãy dùng phương án dự phòng fixture trong Xử lý sự cố.

Hoàn thành khi

  • clickhouse client --version chạy thành công;
  • clickhousectl cloud service get <service-id> báo service đã sẵn sàng;
  • printf hiển thị đúng host/database/mode mong đợi; và
  • ./preflight.sh in ra READY.

Tiếp theo: khám phá các thị trường bạn sẽ theo dõi.

Trên trang này

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.

VI