Skip to content

Commit d150785

Browse files
committed
fix: Apply migrations on app startup and remove selfhosted object storage
1 parent 88dff6d commit d150785

File tree

2 files changed

+22
-26
lines changed

2 files changed

+22
-26
lines changed

Dockerfile

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,23 @@ RUN adduser --system --uid 1001 nextjs
3131
COPY --from=builder /usr/src/app/public ./public
3232
COPY --from=builder --chown=nextjs:nodejs /usr/src/app/.next/standalone ./
3333
COPY --from=builder --chown=nextjs:nodejs /usr/src/app/.next/static ./.next/static
34+
COPY --from=builder /usr/src/app/prisma ./prisma
35+
COPY --from=builder /usr/src/app/node_modules/.prisma ./node_modules/.prisma
36+
COPY --from=builder /usr/src/app/node_modules/@prisma ./node_modules/@prisma
37+
38+
COPY --chown=nextjs:nodejs <<EOF /app/start.sh
39+
#!/bin/sh
40+
echo "Applying database migrations..."
41+
bunx prisma migrate deploy
42+
echo "Starting the application..."
43+
exec bun server.js
44+
EOF
45+
46+
RUN chmod +x /app/start.sh
3447

3548
USER nextjs
3649
EXPOSE 3000
3750
ENV PORT=3000
3851
ENV HOSTNAME="0.0.0.0"
39-
CMD ["bun", "server.js"]
52+
53+
CMD ["/app/start.sh"]

compose.yml

Lines changed: 7 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,16 @@ services:
1111
LOGTO_COOKIE_SECRET: "a-very-long-and-random-secret-string-for-cookies"
1212
DATABASE_URL: "postgres://chatuser:chatpassword@db:5432/chatdb"
1313
REDIS_URL: "redis://:redispassword@redis:6379/0"
14-
S3_ENDPOINT: "http://minio:9000"
15-
S3_ACCESS_KEY_ID: "minio_access_key"
16-
S3_SECRET_ACCESS_KEY: "minio_secret_key"
17-
S3_BUCKET_NAME: "mdchat-bucket"
18-
S3_REGION: "us-east-1"
19-
S3_UPLOAD_DIR: "uploads"
20-
S3_PUBLIC_URL: "http://localhost:9000/mdchat-bucket/"
14+
S3_ENDPOINT: ""
15+
S3_ACCESS_KEY_ID: ""
16+
S3_SECRET_ACCESS_KEY: ""
17+
S3_BUCKET_NAME: ""
18+
S3_REGION: ""
19+
S3_UPLOAD_DIR: ""
20+
S3_PUBLIC_URL: ""
2121
depends_on:
2222
- db
2323
- redis
24-
- minio
2524
networks:
2625
- app-network
2726

@@ -48,26 +47,9 @@ services:
4847
networks:
4948
- app-network
5049

51-
minio:
52-
image: quay.io/minio/minio:latest
53-
container_name: chat_minio
54-
ports:
55-
- "9000:9000"
56-
- "9001:9001"
57-
environment:
58-
MINIO_ROOT_USER: minio_access_key
59-
MINIO_ROOT_PASSWORD: minio_secret_key
60-
MINIO_BROWSER: "on"
61-
command: server /data --console-address ":9001"
62-
volumes:
63-
- minio_data:/data
64-
networks:
65-
- app-network
66-
6750
volumes:
6851
postgres_data:
6952
redis_data:
70-
minio_data:
7153

7254
networks:
7355
app-network:

0 commit comments

Comments
 (0)