Saltar para o conteúdo principal

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.