FROM oven/bun:1 AS base WORKDIR /app # Install dependencies COPY package.json bun.lock* ./ RUN bun install --frozen-lockfile 2>/dev/null || bun install # Copy source COPY . . # Generate migrations and run EXPOSE 3100 RUN apt-get update && apt-get install -y postgresql-client && rm -rf /var/lib/apt/lists/* COPY init-tables.sql /app/init-tables.sql CMD ["sh", "-c", "echo 'Running init SQL...' && psql \"$DATABASE_URL\" -f /app/init-tables.sql 2>&1 && echo 'Init SQL done' && echo 'Running db:push...' && yes | bun run db:push 2>&1; echo 'db:push exit code:' $? && echo 'Starting server...' && bun run start"]