Compare commits

..

13 Commits

6 changed files with 27 additions and 19 deletions
+4 -11
View File
@@ -39,9 +39,7 @@ ENV NODE_ENV=production
RUN apt-get update && apt-get install -y --no-install-recommends \ RUN apt-get update && apt-get install -y --no-install-recommends \
openssl \ openssl \
&& rm -rf /var/lib/apt/lists/* \ && rm -rf /var/lib/apt/lists/* \
&& groupadd --system --gid 1001 nodejs \ && apt-get clean && rm -rf /var/lib/apt/lists/*
&& useradd --system --uid 1001 nextjs \
&& mkdir -p /home/nextjs && chown nextjs:nextjs /home/nextjs
COPY --from=builder /app/public ./public COPY --from=builder /app/public ./public
COPY --from=builder /app/.next/standalone ./ COPY --from=builder /app/.next/standalone ./
@@ -55,17 +53,12 @@ COPY --from=builder /app/prisma/schema.prisma /app/schema.prisma
COPY docker-entrypoint.sh /usr/local/bin/ COPY docker-entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/docker-entrypoint.sh RUN chmod +x /usr/local/bin/docker-entrypoint.sh
# Create data directory and initialize database as root
RUN mkdir -p /app/data && chown -R nextjs:nodejs /app
USER nextjs
EXPOSE 3000 EXPOSE 3000
ENV PORT=3000 ENV PORT=3000
ENV HOSTNAME="0.0.0.0" ENV HOSTNAME="0.0.0.0"
ENV DATABASE_URL="file:./data/dev.db" ENV DATABASE_URL="file:/app/data/dev.db"
ENV HOME=/home/nextjs
ENTRYPOINT ["docker-entrypoint.sh"] ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
CMD ["node", "server.js"] CMD ["node", "server.js"]
Vendored
+3 -3
View File
@@ -85,13 +85,13 @@ services:
- "traefik.http.routers.${NAME_SERVICE}.rule=Host(`recall.vodorod.cl`)" - "traefik.http.routers.${NAME_SERVICE}.rule=Host(`recall.vodorod.cl`)"
environment: environment:
- TZ=America/Santiago - TZ=America/Santiago
- DATABASE_URL=file:./data/dev.db - DATABASE_URL=file:/app/data/dev.db
volumes: volumes:
- ./data:/app/data - ./data:/app/data
networks: networks:
- homelab-net - homelab-net
mem_limit: 32m mem_limit: 512m
mem_reservation: 16m mem_reservation: 256m
restart: unless-stopped restart: unless-stopped
networks: networks:
homelab-net: homelab-net:
+4
View File
@@ -248,3 +248,7 @@ src/
└── types/ └── types/
└── note.ts └── note.ts
``` ```
nueva prueba
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -8,5 +8,5 @@ services:
volumes: volumes:
- ./data:/app/data - ./data:/app/data
environment: environment:
- DATABASE_URL=file:./data/dev.db - DATABASE_URL=file:/app/data/dev.db
restart: unless-stopped restart: unless-stopped
+15 -4
View File
@@ -1,14 +1,25 @@
#!/bin/bash #!/bin/bash
set -e set -e
# Initialize database if it doesn't exist or schema changed cd /app
echo "Checking database..." echo "Checking database..."
# Create directories with proper permissions # Ensure data directory exists with proper permissions
mkdir -p /app/data mkdir -p /app/data
chmod 777 /app/data
# Use local prisma version from node_modules # Run db push (creates/updates database schema)
./node_modules/prisma/build/index.js db push # If it fails due to OOM but DB exists, continue anyway
./node_modules/prisma/build/index.js db push --skip-generate || {
exit_code=$?
if [ -f /app/data/dev.db ]; then
echo "db push failed (code $exit_code) but database exists, continuing..."
else
echo "db push failed and database does not exist"
exit $exit_code
fi
}
echo "Starting application..." echo "Starting application..."
exec "$@" exec "$@"