Gestor de marcadores / favoritos. Desarrollado en JavaScript.
Clonamos el repositorio de GitHub:
git clone https://github.com/ndom91/briefkasten
Dentro del directorio creado, renombramos el fichero env.example como .env y editamos al menos:
DATABASE_URL= NEXTAUTH_URL=https://briefkasten.midominio.com NEXTAUTH_URL_INTERNAL=http://localhost:3000 NEXTAUTH_SECRET=
El valor de NEXTAUTH_SECRET lo podemos generar con:
openssl rand -hex 32
DATABASE_URL sigue el formato:
tipo_base_de_datos://usuario:contraseña@servidor_base_de_datos:puerto/base_de_datos
Por ejemplo:
Resultaría en:
DATABASE_URL=postgres://bkAdmin:briefkasten@postgres:5432/briefkasten?sslmode=disable
Si vamos a usar GitHub como medio de autenticación, debemos crear esa identidad en OAuth Apps y cubrir de la siguiente manera un par de campos importantes:
Modificaremos a nuestro gusto el docker-compose.yml que incluye el repositorio:
version: '3.8' services: postgres: container_name: bk-postgres image: postgres restart: unless-stopped environment: - POSTGRES_USER=bkAdmin - POSTGRES_PASSWORD=briefkasten - POSTGRES_DB=briefkasten ports: - 5432:5432 volumes: - briefkasten-db:/var/lib/postgresql/data app: container_name: bk-app build: . env_file: - .env restart: unless-stopped ports: - 3000:3000 depends_on: - 'postgres' environment: - VIRTUAL_HOST=briefkasten.midominio.com - VIRTUAL_PORT=3000 - LETSENCRYPT_HOST=briefkasten.midominio.com # obligatorio para letsencrypt proxy volumes: briefkasten-db: networks: default: name: alexandria external: true
El docker-compose.yml anterior está editado para poder usarse con un contenedor con nginx que hace de proxy y una red externa de Docker
Levantmos los contenedores:
docker compose up -d
Debemos recrear la base de datos desde el contendor con PostgreSQL:
docker exec -it bk-app /bin/bash
Y ejecutamos:
pnpm db:push
Al terminar, salimos del contenedor con exit.
Ya podremos acceder a la URL que hayamos configurado para nuestra instancia de Briefkasten.