Revise dockerfile and healthcheck
This commit is contained in:
20
Dockerfile
20
Dockerfile
@@ -7,27 +7,13 @@ COPY . .
|
||||
RUN apk add --no-cache bash git go gcc musl-dev curl fuse libxml2-utils
|
||||
RUN go build -ldflags "-s -w -X 'github.com/debridmediamanager/zurg/internal/version.BuiltAt=$BuiltAt' -X 'github.com/debridmediamanager/zurg/internal/version.GitCommit=$GitCommit' -X 'github.com/debridmediamanager/zurg/internal/version.Version=$Version'" -o zurg ./cmd/zurg
|
||||
|
||||
# Obfuscation stage
|
||||
FROM alpine:3 AS obfuscator
|
||||
WORKDIR /app
|
||||
COPY --from=builder /app/zurg .
|
||||
RUN apk add --no-cache upx
|
||||
RUN upx --brute zurg
|
||||
# Create a health check script that extracts the port from the config file
|
||||
COPY ./healthcheck.sh /app/healthcheck.sh
|
||||
RUN chmod +x /app/healthcheck.sh
|
||||
|
||||
# Final stage
|
||||
FROM alpine:3
|
||||
WORKDIR /app
|
||||
|
||||
# Copy the obfuscated binary from the obfuscator stage
|
||||
COPY --from=obfuscator /app/zurg .
|
||||
COPY --from=obfuscator /app/healthcheck.sh .
|
||||
|
||||
# Copy the rest of the application files, including the config.yml
|
||||
COPY --from=builder /app/zurg .
|
||||
COPY ./healthcheck.sh /app/healthcheck.sh
|
||||
RUN chmod +x /app/healthcheck.sh
|
||||
COPY config.example.yml /app/config.yml
|
||||
|
||||
# Install runtime dependencies and configure FUSE
|
||||
RUN apk add curl python3
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
response=$(curl -o /dev/null -s -w "%{http_code}" http://localhost:9999/)
|
||||
response=$(curl -o /dev/null -s -w "%{http_code}" "http://fun.box:9999/http/version.txt")
|
||||
if [ "$response" -eq 200 ]; then
|
||||
exit 0
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user