Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 14 additions & 11 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
DATABASE_URL=""
# https://next-auth.js.org/configuration/options#secret
NEXTAUTH_SECRET=""
NEXTAUTH_URL=""
# NEXTAUTH_URL="http://192.168.1.83:3000"
# Next Auth Google Provider
GOOGLE_CLIENT_ID=""
GOOGLE_CLIENT_SECRET=""
# Postgres
POSTGRES_USER=postgres
POSTGRES_PASSWORD=SECURE_PASSWORD
POSTGRES_DB=presentation_ai

OPENAI_API_KEY=""
TOGETHER_AI_API_KEY=""
# Presentation AI
DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=SECURE_SECRET

UPLOADTHING_TOKEN=""
GOOGLE_CLIENT_ID=YOUR_GOOGLE_CLIENT_ID
GOOGLE_CLIENT_SECRET=YOUR_GOOGLE_CLIENT_SECRET

OPENAI_API_KEY=YOUR_OPENAI_API_KEY
TOGETHER_AI_API_KEY=YOU_TOGETHER_AI_API_KEY
UPLOADTHING_TOKEN=YOUR_UPLOADTHING_TOKEN
12 changes: 12 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
FROM node:alpine3.22

WORKDIR /app
RUN apk --update --no-cache add git \
openssl \
&& git clone https://github.com/allweonedev/presentation-ai.git . \
&& npm install -g pnpm@latest-10 \
&& rm -f .example.env

COPY .env /app

RUN pnpm install
31 changes: 31 additions & 0 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
services:
postgres:
image: postgres:17.5-alpine3.22
container_name: presentation-ai-postgres
restart: unless-stopped
env_file: .env
expose:
- 5432
volumes:
- presentation-ai-postgres-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 5
presentation-ai:
build:
context: .
container_name: presentation-ai-app
env_file: .env
restart: on-failure
ports:
- 3000:3000
depends_on:
postgres:
condition: service_healthy
entrypoint: >
/bin/sh -c "pnpm db:push && pnpm dev"

volumes:
presentation-ai-postgres-data: