30 lines
808 B
Docker
30 lines
808 B
Docker
# 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"]
|