# Elly Discord Bot Dockerfile # ============================ FROM denoland/deno:latest # Set working directory WORKDIR /app # Copy dependency files first for better caching COPY deno.json deno.lock ./ # Cache dependencies (--frozen flag ensures lockfile v5 compatibility) RUN deno install --frozen # Copy source code COPY src/ ./src/ # Copy config COPY config.toml ./config.toml COPY .env ./.env # Create data and logs directories RUN mkdir -p /app/data /app/logs # Cache the main application RUN deno cache --unstable-ffi src/index.ts # Run the bot CMD ["deno", "run", "--allow-net", "--allow-read", "--allow-write", "--allow-env", "--allow-ffi", "--unstable-ffi", "src/index.ts"]