Delete Docker directory
This commit is contained in:
1 parent
50b05d8dd2
commit
18b2c37dc0
2 files changed
-81
No files matched your search
@@ -1,57 +0,0 @@
|
|||||||
# Build stage
|
|
||||||
FROM rust:1.72-slim-bookworm AS builder
|
|
||||||
|
|
||||||
# Install necessary build dependencies
|
|
||||||
RUN apt-get update && apt-get install -y \
|
|
||||||
musl-tools \
|
|
||||||
build-essential \
|
|
||||||
pkg-config \
|
|
||||||
libssl-dev \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# Add support for cross-compilation to Alpine
|
|
||||||
RUN rustup target add x86_64-unknown-linux-musl
|
|
||||||
|
|
||||||
# Create a new empty project
|
|
||||||
WORKDIR /app
|
|
||||||
COPY . .
|
|
||||||
|
|
||||||
# Build the project with musl target
|
|
||||||
RUN cargo build --target x86_64-unknown-linux-musl --release
|
|
||||||
|
|
||||||
# Runtime stage
|
|
||||||
FROM alpine:3.18
|
|
||||||
|
|
||||||
# Install runtime dependencies
|
|
||||||
RUN apk --no-cache add ca-certificates sqlite tzdata
|
|
||||||
|
|
||||||
# Create a non-root user for running the application
|
|
||||||
RUN addgroup -S dns && adduser -S dnsuser -G dns
|
|
||||||
|
|
||||||
# Create necessary directories
|
|
||||||
RUN mkdir -p /var/nx9-dns-server /var/log/nx9-dns-server /etc/nx9-dns-server
|
|
||||||
RUN chown -R dnsuser:dns /var/nx9-dns-server /var/log/nx9-dns-server /etc/nx9-dns-server
|
|
||||||
|
|
||||||
# Copy the compiled binary
|
|
||||||
COPY --from=builder /app/target/x86_64-unknown-linux-musl/release/dns_server /usr/local/bin/
|
|
||||||
RUN chmod +x /usr/local/bin/dns_server
|
|
||||||
|
|
||||||
# Copy configuration files
|
|
||||||
COPY --from=builder /app/conf/dns_records.sql /etc/nx9-dns-server/
|
|
||||||
COPY --from=builder /app/conf/dns.db.sample /etc/nx9-dns-server/
|
|
||||||
|
|
||||||
# Expose DNS ports
|
|
||||||
EXPOSE 53/udp 53/tcp
|
|
||||||
# Expose Web UI port
|
|
||||||
EXPOSE 8080/tcp
|
|
||||||
# Expose API port
|
|
||||||
EXPOSE 8081/tcp
|
|
||||||
|
|
||||||
# Set working directory
|
|
||||||
WORKDIR /var/nx9-dns-server
|
|
||||||
|
|
||||||
# Switch to non-root user
|
|
||||||
USER dnsuser
|
|
||||||
|
|
||||||
# Command to run the application
|
|
||||||
CMD ["/usr/local/bin/dns_server"]
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
version: '3.8'
|
|
||||||
|
|
||||||
services:
|
|
||||||
dns:
|
|
||||||
image: nx9-dns-server:latest
|
|
||||||
container_name: nx9-dns
|
|
||||||
ports:
|
|
||||||
- "53:53/udp"
|
|
||||||
- "53:53/tcp"
|
|
||||||
- "8080:8080"
|
|
||||||
- "8081:8081"
|
|
||||||
volumes:
|
|
||||||
- ./data/dns.db:/var/nx9-dns-server/dns.db
|
|
||||||
- ./keys:/etc/nx9-dns-server/keys
|
|
||||||
- ./logs:/var/log/nx9-dns-server
|
|
||||||
environment:
|
|
||||||
- DNS_BIND=0.0.0.0:53
|
|
||||||
- DNS_DB_PATH=/var/nx9-dns-server/dns.db
|
|
||||||
- DNSSEC_KEY_FILE=/etc/nx9-dns-server/keys/Kanydomain.tld.key
|
|
||||||
- DNS_FORWARDERS=8.8.8.8:53,1.1.1.1:53
|
|
||||||
- DNS_NS_RECORDS=ns1.anydomain.tld.,ns2.anydomain.tld.
|
|
||||||
- WEB_UI_BIND=0.0.0.0:8080
|
|
||||||
- API_BIND=0.0.0.0:8081
|
|
||||||
restart: unless-stopped
|
|
||||||
Reference in new issue
Block a user