# Elly Discord Bot Dockerfile # ============================ FROM denoland/deno:2.1.4 # Set working directory WORKDIR /app # Copy dependency files first for better caching COPY deno.json deno.lock ./ # Cache dependencies RUN deno cache --reload npm:discord.js@^14.14.1 npm:@discordjs/rest@^2.2.0 npm:@toml-tools/parser@^1.0.0 # Copy source code COPY src/ ./src/ COPY pikanetwork.js/ ./pikanetwork.js/ # Copy config (will be overridden by volume mount in production) COPY config.example.toml ./config.example.toml # 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"]