release: hmac-file-server 3.2
This commit is contained in:
83
dockerenv/config/config.toml
Normal file
83
dockerenv/config/config.toml
Normal file
@ -0,0 +1,83 @@
|
||||
[server]
|
||||
listenport = "8080"
|
||||
unixsocket = false
|
||||
storagepath = "/opt/hmac-file-server/data/uploads"
|
||||
metricsenabled = true
|
||||
metricsport = "9090"
|
||||
deduplicationenabled = true
|
||||
minfreebytes = "5GB"
|
||||
filettl = "2y"
|
||||
filettlenabled = false
|
||||
autoadjustworkers = true
|
||||
networkevents = false
|
||||
pidfilepath = "./hmac-file-server.pid"
|
||||
precaching = false
|
||||
|
||||
[deduplication]
|
||||
enabled = true
|
||||
directory = "/opt/hmac-file-server/data/duplicates"
|
||||
|
||||
[logging]
|
||||
level = "debug"
|
||||
file = "./hmac-file-server.log"
|
||||
max_size = 100
|
||||
max_backups = 7
|
||||
max_age = 30
|
||||
compress = true
|
||||
|
||||
[iso]
|
||||
enabled = false
|
||||
size = "1TB"
|
||||
mountpoint = "/mnt/nfs_vol01/hmac-file-server/iso/"
|
||||
charset = "utf-8"
|
||||
|
||||
[timeouts]
|
||||
readtimeout = "3600s"
|
||||
writetimeout = "3600s"
|
||||
idletimeout = "3600s"
|
||||
|
||||
[security]
|
||||
secret = "hmac-file-server-is-the-win"
|
||||
|
||||
[versioning]
|
||||
enableversioning = false
|
||||
maxversions = 1
|
||||
|
||||
[uploads]
|
||||
resumableuploadsenabled = false
|
||||
chunkeduploadsenabled = true
|
||||
chunksize = "32MB"
|
||||
allowedextensions = [
|
||||
".txt", ".pdf", ".png", ".jpg", ".jpeg", ".gif", ".bmp", ".tiff", ".svg", ".webp",
|
||||
".wav", ".mp4", ".avi", ".mkv", ".mov", ".wmv", ".flv", ".webm", ".mpeg", ".mpg",
|
||||
".m4v", ".3gp", ".3g2", ".mp3", ".ogg"
|
||||
]
|
||||
|
||||
[downloads]
|
||||
chunkeddownloadsenabled = false
|
||||
chunksize = "32MB"
|
||||
allowedextensions = [
|
||||
".txt", ".pdf", ".png", ".jpg", ".jpeg", ".gif", ".bmp", ".tiff", ".svg", ".webp",
|
||||
".wav", ".mp4", ".avi", ".mkv", ".mov", ".wmv", ".flv", ".webm", ".mpeg", ".mpg",
|
||||
".m4v", ".3gp", ".3g2", ".mp3", ".ogg"
|
||||
]
|
||||
|
||||
[clamav]
|
||||
clamavenabled = false
|
||||
clamavsocket = "/var/run/clamav/clamd.ctl"
|
||||
numscanworkers = 4
|
||||
scanfileextensions = [".exe", ".dll", ".bin", ".com", ".bat", ".sh", ".php", ".js"]
|
||||
|
||||
[redis]
|
||||
redisenabled = false
|
||||
redisdbindex = 0
|
||||
redisaddr = "localhost:6379"
|
||||
redispassword = ""
|
||||
redishealthcheckinterval = "120s"
|
||||
|
||||
[workers]
|
||||
numworkers = 4
|
||||
uploadqueuesize = 5000
|
||||
|
||||
[file]
|
||||
filerevision = 1
|
0
dockerenv/data/logs/all-logs-here.txt
Normal file
0
dockerenv/data/logs/all-logs-here.txt
Normal file
0
dockerenv/data/uploads/all-uploads-here.txt
Normal file
0
dockerenv/data/uploads/all-uploads-here.txt
Normal file
17
dockerenv/docker-compose.yml
Normal file
17
dockerenv/docker-compose.yml
Normal file
@ -0,0 +1,17 @@
|
||||
#version: '3.8'
|
||||
|
||||
services:
|
||||
hmac-file-server:
|
||||
container_name: hmac-file-server
|
||||
image: hmac-file-server:latest
|
||||
ports:
|
||||
- "8080:8080"
|
||||
volumes:
|
||||
- ./config:/etc/hmac-file-server
|
||||
- ./data/uploads:/opt/hmac-file-server/data/uploads
|
||||
- ./data/duplicates:/opt/hmac-file-server/data/duplicates
|
||||
- ./data/temp:/opt/hmac-file-server/data/temp
|
||||
- ./data/logs:/opt/hmac-file-server/data/logs
|
||||
environment:
|
||||
- CONFIG_PATH=/etc/hmac-file-server/config.toml
|
||||
restart: unless-stopped
|
27
dockerenv/dockerbuild/Dockerfile
Normal file
27
dockerenv/dockerbuild/Dockerfile
Normal file
@ -0,0 +1,27 @@
|
||||
# Stage 1: Build
|
||||
FROM golang:1.24-alpine AS builder
|
||||
|
||||
WORKDIR /build
|
||||
RUN apk add --no-cache git
|
||||
COPY go.mod go.sum ./
|
||||
RUN go mod download
|
||||
COPY . .
|
||||
RUN CGO_ENABLED=0 go build -o hmac-file-server cmd/server/main.go cmd/server/helpers.go cmd/server/config_validator.go cmd/server/config_test_scenarios.go
|
||||
|
||||
# Stage 2: Runtime
|
||||
FROM alpine:latest
|
||||
|
||||
RUN apk --no-cache add ca-certificates
|
||||
|
||||
RUN mkdir -p /opt/hmac-file-server/data/uploads \
|
||||
&& mkdir -p /opt/hmac-file-server/data/duplicates \
|
||||
&& mkdir -p /opt/hmac-file-server/data/temp \
|
||||
&& mkdir -p /opt/hmac-file-server/data/logs
|
||||
|
||||
WORKDIR /opt/hmac-file-server
|
||||
|
||||
COPY --from=builder /build/hmac-file-server .
|
||||
|
||||
EXPOSE 8080
|
||||
|
||||
CMD ["./hmac-file-server", "--config", "/etc/hmac-file-server/config.toml"]
|
Reference in New Issue
Block a user