Karakeep

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

Acceso

  • Abrir en tu navegador: https://<SERVER_IP>
  • Aceptar advertencia SSL (certificado autofirmado).
  • Create a new account via the web interface.
  • La primera cuenta creada se convierte en el usuario administrador.

Configuración

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

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

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

Disable Public Signups (Optional)

Editar .env and modify DISABLE_SIGNUPS:

DISABLE_SIGNUPS=true

Aplicar cambios:

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

Enable AI Features (Optional)

Editar /root/karakeep/docker-compose.yml under the web servicio:

environment:
  # OPENAI_API_KEY: "your_openai_api_key_here"

Uncomment the line and insert your OpenAI API key:

environment:
  OPENAI_API_KEY: "sk-xxxxxxxxxxxxxxxxxxxxxxxx"

Aplicar cambios:

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

Archivos y directorios importantes

  • Directorio de aplicaciones: /root/karakeep
  • Archivo Docker Compose: /root/karakeep/docker-compose.yml
  • Archivo de medio ambiente: /root/karakeep/.env
  • KaraKeep data: /var/lib/docker/volumes/karakeep_data/_data
  • Meilisearch data: /var/lib/docker/volumes/karakeep_meilisearch/_data
  • Configuración de Nginx: /etc/nginx/sites-available/karakeep
  • Certificados SSL: /etc/nginx/ssl/

Enabling SSL with a Domain (Optional)

1. Dirija su dominio a la IP del servidor.

2. Editar el /root/karakeep/docker-compose.yml archivo para configurar tu nombre de dominio: NEXTAUTH_URL=https://your.domain.com

3. Recrear los servicios:

cd /root/karakeep/
docker compose up -d

4. Edita la configuración de Nginx y sustituye ambos server_name <IP>; con tu dominio (<your-domain>) tanto para bloques HTTP (puerto 80) como HTTPS (puerto 443):

vim /etc/nginx/sites-available/karakeep

5. Instalar Certbot:

apt install -y certbot python3-certbot-nginx

6. Ejecute el siguiente comando para generar un certificado Let's Encrypt válido:

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

7. Reemplazar las rutas SSL en la configuración de Nginx (sección 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. Reinicie Nginx para aplicar los cambios:

systemctl restart nginx

9. Abra su navegador y visite: https://yourdomain.com

Detalles de la solicitud