Faça o deploy de ClickHouse no Pethost com um clique
Um banco de dados colunar rápido para análises, com SQL por HTTP
O que acontece
- Você entra no Pethost ou cria uma conta, com uma passkey, GitHub ou Google.
- Ainda não tem máquina? Você escolhe um plano, e nós preparamos uma para você. O link espera no seu navegador até ela ficar pronta.
- Novo projeto abre no app. Você preenche o que ele pede e clica em Criar projeto: Senha do administrador.
- Em um ou dois minutos o app está no ar no próprio endereço com HTTPS. Os segredos dele são gerados ao acaso, e os dados vão para o backup noturno.
- É um projeto como qualquer outro: o compose.yaml, o .env, os logs e um terminal ficam no painel, e seu agente pode alterá-lo, fazer rollback ou restaurá-lo.
Primeiros passos
Abra https://clickhouse.sam.pethost.app/play e entre como default com a senha de administrador que você informou. Clientes que usam a interface HTTP do ClickHouse se conectam a https://clickhouse.sam.pethost.app na porta 443; o protocolo nativo da porta 9000 não é acessível. Os dados ficam guardados em /var/lib/clickhouse.
O que roda
O template é este compose.yaml e as variáveis que ele grava no .env do projeto. O Pethost roda o arquivo exatamente como está escrito.
services:
clickhouse:
image: clickhouse/clickhouse-server:26.8.27.9
restart: unless-stopped
environment:
# The user default, with the password given: without one the image lets it in from the
# container's network only, and the HTTP interface would be closed to everyone.
CLICKHOUSE_USER: default
CLICKHOUSE_PASSWORD: ${ADMIN_PASSWORD}
CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT: "1"
# The stock config logs at trace level into ten files of 1000 MB and keeps its query, metric and
# trace tables for ever: on a small machine they would fill the disk over months. This keeps the
# server's log under 300 MB and those tables a week.
entrypoint:
- sh
- -c
- |
cat > /etc/clickhouse-server/config.d/small-machine.xml <<'XML'
<clickhouse>
<logger><level>information</level><size>100M</size><count>3</count></logger>
<query_log><ttl>event_date + INTERVAL 7 DAY DELETE</ttl></query_log>
<metric_log><ttl>event_date + INTERVAL 7 DAY DELETE</ttl></metric_log>
<asynchronous_metric_log><ttl>event_date + INTERVAL 7 DAY DELETE</ttl></asynchronous_metric_log>
<trace_log><ttl>event_date + INTERVAL 7 DAY DELETE</ttl></trace_log>
<text_log><ttl>event_date + INTERVAL 7 DAY DELETE</ttl></text_log>
<part_log><ttl>event_date + INTERVAL 7 DAY DELETE</ttl></part_log>
<error_log><ttl>event_date + INTERVAL 7 DAY DELETE</ttl></error_log>
</clickhouse>
XML
exec /entrypoint.sh
volumes:
- data:/var/lib/clickhouse
volumes:
data: