refactor: migrate from MongoDB to SQLite, updating database schema and configuration for improved performance and simplicity
This commit is contained in:
@@ -5,8 +5,6 @@ services:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
args:
|
||||
- MONGODB_URI=${MONGODB_URI}
|
||||
container_name: stripstream-app
|
||||
ports:
|
||||
- "3020:3000"
|
||||
@@ -24,11 +22,10 @@ services:
|
||||
- /app/.next
|
||||
- ~/.pnpm-store:/app/.pnpm-store
|
||||
- cache_data:/app/.cache
|
||||
- sqlite_data:/app/data
|
||||
environment:
|
||||
- NODE_ENV=development
|
||||
- MONGO_USER=admin
|
||||
- MONGO_PASSWORD=password123
|
||||
- MONGODB_URI=${MONGODB_URI}
|
||||
- DATABASE_URL=file:/app/data/stripstream.db
|
||||
- PNPM_HOME=/app/.pnpm-store
|
||||
- WATCHPACK_POLLING=true
|
||||
- NEXTAUTH_SECRET=${NEXTAUTH_SECRET}
|
||||
@@ -37,28 +34,6 @@ services:
|
||||
- KOMGA_MAX_CONCURRENT_REQUESTS=5
|
||||
command: sh -c "pnpm config set store-dir /app/.pnpm-store && pnpm install --frozen-lockfile && pnpm prisma generate && pnpm dev"
|
||||
|
||||
mongodb:
|
||||
image: mongo:latest
|
||||
container_name: stripstream_mongodb
|
||||
restart: always
|
||||
environment:
|
||||
MONGO_INITDB_ROOT_USERNAME: ${MONGO_USER}
|
||||
MONGO_INITDB_ROOT_PASSWORD: ${MONGO_PASSWORD}
|
||||
MONGO_INITDB_DATABASE: stripstream
|
||||
ports:
|
||||
- "27017:27017"
|
||||
volumes:
|
||||
- mongodb_data:/data/db
|
||||
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
|
||||
- ./mongo-keyfile:/data/keyfile:ro
|
||||
command: ["mongod", "--replSet", "rs0", "--bind_ip_all", "--keyFile", "/data/keyfile"]
|
||||
healthcheck:
|
||||
test: echo "try { rs.status() } catch (err) { rs.initiate({_id:'rs0',members:[{_id:0,host:'mongodb:27017'}]}) }" | mongosh -u ${MONGO_USER} -p ${MONGO_PASSWORD} --authenticationDatabase admin --quiet
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
start_period: 40s
|
||||
|
||||
volumes:
|
||||
mongodb_data:
|
||||
sqlite_data:
|
||||
cache_data:
|
||||
|
||||
Reference in New Issue
Block a user