Instalação
A forma mais rápida de executar o Campbooks é com Docker — docker compose up inicia toda a pilha (Postgres com pgvector, a aplicação web e um worker em segundo plano). Se preferir trabalhar diretamente com o código, existe também um caminho a partir do código fonte abaixo.
Só quer implementá-lo a sério? Esta página permite-lhe executar localmente. Para um servidor de produção com domínio e HTTPS, siga o Guia de Auto-Alojamento.
Opção A — Docker (recomendado)
Pré-requisitos
- Docker e o plugin Docker Compose (Docker Desktop, ou Docker Engine ≥ 24 com
docker compose) - Cerca de 2 GB de RAM disponível
openssl(já presente no macOS e Linux) para gerar segredos
É tudo — Ruby, Postgres e tudo o resto executam dentro dos contentores.
1. Clonar e configurar
git clone https://github.com/notacamp/campbooks.git
cd campbooks
cp .env.example .env
bin/generate-secrets # preenche SECRET_KEY_BASE, as chaves de encriptação e a palavra-passe da BD
bin/generate-secrets escreve os quatro segredos obrigatórios e a palavra-passe da base de dados no ficheiro .env.
As chaves de encriptação são obrigatórias. SECRET_KEY_BASE, ACTIVE_RECORD_PRIMARY_KEY, ACTIVE_RECORD_DETERMINISTIC_KEY e ACTIVE_RECORD_KEY_DERIVATION_SALT têm de estar todas definidas ou a aplicação não arranca. As chaves de encriptação protegem os tokens OAuth e as chaves de IA em repouso — bin/generate-secrets cria-as; para fazê-lo manualmente, utilize openssl rand -hex 64 para SECRET_KEY_BASE e openssl rand -hex 16 para as três chaves AR.
2. (Opcional) Adicionar uma chave de IA e integrações
Abra o ficheiro .env e adicione pelo menos uma chave de fornecedor de IA para ativar o triage, o Scout, respostas rascunhadas e análise de documentos — e quaisquer credenciais OAuth para as caixas de correio/integrações que pretenda. Tudo aqui é opcional; a aplicação funciona sem isso.
# qualquer uma destas ativa a IA de texto (triage, Scout, respostas rascunhadas)
OPENAI_API_KEY=... # também ativa análise de documentos/visão + embeddings
ANTHROPIC_API_KEY=...
MISTRAL_API_KEY=... # alojado na UE
3. Iniciar
docker compose up -d --build
# o primeiro arranque cria as bases de dados e executa as migrações — acompanhe o progresso
docker compose logs -f web
Abra http://localhost:3000 e registe a primeira conta — numa instância auto-alojada o registo está aberto, e o primeiro utilizador cria o espaço de trabalho.
Credenciais de demonstração. O primeiro arranque também cria um espaço de trabalho de demonstração com que pode iniciar sessão: admin@example.com / changeme123 (e partner@example.com). Altere essa palavra-passe após o primeiro início de sessão, ou defina SEED_PASSWORD no ficheiro .env antes do primeiro arranque.
Para parar: docker compose down (adicione -v para também apagar a base de dados e os ficheiros carregados).
Opção B — A partir do código fonte (para desenvolvimento)
Prefere executar a aplicação diretamente — para contribuir, por exemplo? Vai precisar de:
- Ruby 3.2.2 (consulte
.ruby-version) - PostgreSQL 16+ com a extensão pgvector (uma migração executa
CREATE EXTENSION vector, pelo que um Postgres comum não é suficiente)
Node.js e Redis não são necessários — o JavaScript é servido através de import maps, o Tailwind compila via um binário standalone, e as tarefas/cache/cable executam todos em Postgres via os adaptadores Solid.
git clone https://github.com/notacamp/campbooks.git
cd campbooks
bin/setup # instala gems, prepara a base de dados e popula-a com dados iniciais
Configure os segredos no ficheiro .env (como acima), depois execute o servidor web e o worker:
bin/dev # web + observador do Tailwind (Procfile.dev)
bin/rails solid_queue:start # worker em segundo plano (digitalização de email, IA, indexação)
Abra http://localhost:3000 e inicie sessão com um utilizador de demonstração.
Próximo passo
Consulte o Guia de Implementação para executar o Campbooks num servidor com um proxy reverso e HTTPS.