Karakeep

An app to save, organize, and manage your data and bookmarks.

Accesso

  • Apri nel browser: https://<SERVER_IP>
  • Accetta avviso SSL (certificato autofirmato).
  • Create a new account via the web interface.
  • Il primo account creato diventa l'utente amministratore.

Configurazione

Environment variables are stored in: /root/karakeep/.env

Modifica .env o docker-compose.yml to apply changes:

docker compose -f /root/karakeep/docker-compose.yml up -d

Disable Public Signups (Optional)

Modifica .env and modify DISABLE_SIGNUPS:

DISABLE_SIGNUPS=true

Applica le modifiche:

docker compose -f /root/karakeep/docker-compose.yml up -d

Enable AI Features (Optional)

Modifica /root/karakeep/docker-compose.yml under the web servizio:

environment:
  # OPENAI_API_KEY: "your_openai_api_key_here"

Uncomment the line and insert your OpenAI API key:

environment:
  OPENAI_API_KEY: "sk-xxxxxxxxxxxxxxxxxxxxxxxx"

Applica le modifiche:

docker compose -f /root/karakeep/docker-compose.yml up -d

File e directory importanti

  • Directory dell'applicazione: /root/karakeep
  • File Docker Compose: /root/karakeep/docker-compose.yml
  • File ambiente: /root/karakeep/.env
  • KaraKeep data: /var/lib/docker/volumes/karakeep_data/_data
  • Meilisearch data: /var/lib/docker/volumes/karakeep_meilisearch/_data
  • Configurazione Nginx: /etc/nginx/sites-available/karakeep
  • Certificati SSL: /etc/nginx/ssl/

Enabling SSL with a Domain (Optional)

1. Indirizza il tuo dominio all'IP del server.

2. Modifica il /root/karakeep/docker-compose.yml file per impostare il tuo nome di dominio: NEXTAUTH_URL=https://your.domain.com

3. Ricreare i servizi:

cd /root/karakeep/
docker compose up -d

4. Modifica la configurazione di Nginx e sostituisci entrambi server_name <IP>; con il tuo dominio (<your-domain>) sia per i blocchi HTTP (porta 80) che HTTPS (porta 443):

vim /etc/nginx/sites-available/karakeep

5. Installa Certbot:

apt install -y certbot python3-certbot-nginx

6. Esegui il seguente comando per generare un certificato Let's Encrypt valido:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

7. Sostituire i percorsi SSL nella configurazione Nginx (sezione TLS):

vim /etc/nginx/sites-available/karakeep
# Before:
    # ssl_certificate /etc/nginx/ssl/fullchain.pem;
    # ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
    # ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    # ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

8. Riavvia Nginx per applicare le modifiche:

systemctl restart nginx

9. Apri il browser e visita: https://yourdomain.com

Dettagli dell'applicazione