00 Configuration
Préparez macOS ou WSL 2, créez le service ClickHouse Cloud et chargez un seul fichier d'environnement.
Choisissez macOS ou Windows dans l'en-tête. Sous Windows, les commandes s'exécutent dans Ubuntu sur WSL 2, pas dans PowerShell, sauf indication explicite.
Résultat
Vous disposez de Docker, Git, Python, clickhousectl, du client ClickHouse, d'un service Cloud et
d'un .env.polymarket chargé. Le preflight affiche READY.
Étape 1 — Vérifier l'ordinateur
Installez Docker Desktop pour Mac. Dans Terminal, exécutez :
docker version
docker compose version
git --version
python3 --versionÉtape 2 — Cloner le dépôt de l'atelier
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.polymarketLe changement de branche est obligatoire : build-workshop-v1 est l'instantané complet de production.
Exécutez la suite depuis ClickHouse_Demos/workshop_public/polymarket.
Étape 3 — Installer clickhousectl et le client ClickHouse
curl https://clickhouse.com/cli | sh
export PATH="$HOME/.local/bin:$PATH"
clickhousectl --version
clickhousectl local use stable
clickhouse client --versionlocal use installe uniquement le binaire client. Il ne lance aucun serveur de base de données ;
toutes les requêtes ciblent ClickHouse Cloud.
Étape 4 — S'authentifier et créer le service Cloud
Formation en présentiel : utilisez la clé API de l'organisation propre au participant, transmise de façon sécurisée par le formateur.
La connexion interactive évite d'inscrire le secret dans l'historique du shell :
clickhousectl cloud auth login --interactive
clickhousectl cloud auth status
clickhousectl cloud org listUne automatisation de confiance peut employer la forme explicite :
clickhousectl cloud auth login --api-key <key> --api-secret <secret>Créez un service. Ne changez la région que sur instruction du formateur :
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 15Enregistrez l'identifiant du service et le mot de passe à usage unique de l'utilisateur default. Attendez qu'il soit prêt :
clickhousectl cloud service list
clickhousectl cloud service get <service-id>Étape 5 — Remplir et charger .env.polymarket
Ouvrez la boîte de dialogue Connect du service. Placez le hostname brut et le mot de passe dans
.env.polymarket ; n'incluez ni https:// ni :8443 dans l'hôte.
${EDITOR:-vi} .env.polymarket
set -a; source ./.env.polymarket; set +aVérifiez que le shell a chargé les valeurs non secrètes :
printf 'host=%s database=%s mode=%s\n' \
"$CLICKHOUSE_HOST" "$CLICKHOUSE_DATABASE" "$POLYMARKET_MODE"Résultat attendu : le hostname Cloud, polymarket et live.
Étape 6 — Exécuter le preflight
chmod +x ./preflight.sh
./preflight.shRésultat attendu :
READY: Docker, ClickHouse Cloud, Gamma, Data API, and CLOB REST are reachableEn mode fixture sur un réseau qui bloque Polymarket, la dernière ligne devient :
READY: Docker and ClickHouse Cloud are reachable; fixture mode will supply dataSi seul le contrôle de l'API Polymarket échoue, utilisez le repli fixture du Dépannage.
Terminé lorsque
clickhouse client --versionréussit ;clickhousectl cloud service get <service-id>indique que le service est prêt ;printfaffiche l'hôte, la base et le mode attendus ; et./preflight.shafficheREADY.
Suite : découvrir les marchés à observer.