Something went wrong. Try again.
Atproto AMA app
Something went wrong. Try again.
12345678910111213141516171819202122232425262728# --- build stage ---FROM node:22-bookworm-slim AS buildWORKDIR /appRUN corepack enableCOPY package.json pnpm-lock.yaml ./RUN pnpm install --frozen-lockfileCOPY . .RUN pnpm build && pnpm build:ingester && pnpm build:migrate && pnpm build:publish-lexicons
# --- runtime stage ---# Debian/glibc mandatory: @libsql/linux-x64-gnu native binding is in .output. Not Alpine.FROM node:22-bookworm-slim AS runtimeENV NODE_ENV=productionWORKDIR /appCOPY --from=build /app/.output ./.outputCOPY --from=build /app/drizzle ./drizzleCOPY --from=build /app/lexicons ./lexiconsCOPY --from=build /app/lexicons.json ./lexicons.jsonCOPY scripts/docker-entrypoint.sh /app/docker-entrypoint.shRUN chmod +x /app/docker-entrypoint.sh \ && mkdir -p /app/logs \ && chown -R node:node /app# Entrypoint runs as root to fix bind-mount permissions, then drops to node.USER rootEXPOSE 3000ENTRYPOINT ["/app/docker-entrypoint.sh"]CMD ["node", ".output/server/index.mjs"]