tangled
alpha
login
or
join now
teal.fm
/
discordhose
3
fork
atom
this repo has no description
3
fork
atom
overview
issues
pulls
pipelines
docker
mmatt.net
6 months ago
aa825c9f
f5f06fcc
+55
2 changed files
expand all
collapse all
unified
split
Dockerfile
docker-compose.yml
+43
Dockerfile
···
1
1
+
# Use the official Rust image
2
2
+
FROM rust:1.75-slim as builder
3
3
+
4
4
+
# Set working directory
5
5
+
WORKDIR /app
6
6
+
7
7
+
# Copy manifest files
8
8
+
COPY Cargo.toml Cargo.lock ./
9
9
+
10
10
+
# Copy source code
11
11
+
COPY src ./src
12
12
+
13
13
+
# Build the application
14
14
+
RUN cargo build --release
15
15
+
16
16
+
# Runtime stage
17
17
+
FROM debian:bookworm-slim
18
18
+
19
19
+
# Install runtime dependencies
20
20
+
RUN apt-get update && apt-get install -y \
21
21
+
ca-certificates \
22
22
+
&& rm -rf /var/lib/apt/lists/*
23
23
+
24
24
+
# Create app user
25
25
+
RUN useradd -r -s /bin/false appuser
26
26
+
27
27
+
# Set working directory
28
28
+
WORKDIR /app
29
29
+
30
30
+
# Copy the binary from builder stage
31
31
+
COPY --from=builder /app/target/release/discordhose /app/discordhose
32
32
+
33
33
+
# Change ownership to app user
34
34
+
RUN chown -R appuser:appuser /app
35
35
+
36
36
+
# Switch to app user
37
37
+
USER appuser
38
38
+
39
39
+
# Expose port (if needed in the future)
40
40
+
EXPOSE 8080
41
41
+
42
42
+
# Run the application
43
43
+
CMD ["./discordhose"]
+12
docker-compose.yml
···
1
1
+
version: "3.8"
2
2
+
3
3
+
services:
4
4
+
discordhose:
5
5
+
build: .
6
6
+
environment:
7
7
+
- DISCORD_WEBHOOK_URL=${DISCORD_WEBHOOK_URL}
8
8
+
env_file:
9
9
+
- .env
10
10
+
restart: unless-stopped
11
11
+
volumes:
12
12
+
- ./.env:/app/.env:ro