initial commit
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
# VibeDNS via Docker Compose.
|
||||
#
|
||||
# docker compose up -d
|
||||
# docker compose logs vibedns # the generated admin password is printed once
|
||||
#
|
||||
# Then open http://127.0.0.1:8080 and sign in as "admin".
|
||||
|
||||
services:
|
||||
vibedns:
|
||||
build:
|
||||
context: .
|
||||
args:
|
||||
VERSION: "0.1.0"
|
||||
image: vibedns:latest
|
||||
container_name: vibedns
|
||||
restart: unless-stopped
|
||||
|
||||
ports:
|
||||
# DNS needs both transports: TCP is not optional, it is how large
|
||||
# answers are carried after a truncated UDP reply.
|
||||
- "53:53/udp"
|
||||
- "53:53/tcp"
|
||||
# The management interface is bound to loopback on the host. Reach it
|
||||
# over SSH or a VPN rather than exposing it to the network.
|
||||
- "127.0.0.1:8080:8080/tcp"
|
||||
|
||||
volumes:
|
||||
- vibedns-data:/var/lib/vibedns
|
||||
|
||||
environment:
|
||||
VIBEDNS_DB_PATH: /var/lib/vibedns/dns.db
|
||||
VIBEDNS_HTTP_ADDR: 0.0.0.0:8080
|
||||
VIBEDNS_DNS_ADDR: 0.0.0.0:53
|
||||
VIBEDNS_LOG_LEVEL: info
|
||||
VIBEDNS_LOG_FORMAT: text
|
||||
# Set your own initial password instead of the generated one:
|
||||
# VIBEDNS_ADMIN_USERNAME: admin
|
||||
# VIBEDNS_ADMIN_PASSWORD: change-me-to-something-long
|
||||
|
||||
# Binding port 53 without running the whole container as root.
|
||||
cap_drop:
|
||||
- ALL
|
||||
cap_add:
|
||||
- NET_BIND_SERVICE
|
||||
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:8080/healthz"]
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
logging:
|
||||
driver: json-file
|
||||
options:
|
||||
max-size: "10m"
|
||||
max-file: "3"
|
||||
|
||||
volumes:
|
||||
vibedns-data:
|
||||
driver: local
|
||||
Reference in New Issue
Block a user