diff --git a/Dockerfile b/Dockerfile index dfca6d1..753cb54 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,24 +1,18 @@ FROM docker.io/library/golang:1.24-alpine AS builder WORKDIR /app - RUN apk add --no-cache git RUN go install github.com/a-h/templ/cmd/templ@latest - COPY go.mod go.sum* ./ - RUN go mod download - COPY . . - RUN /go/bin/templ generate - RUN CGO_ENABLED=0 GOOS=linux go build -o /app/backea-server ./cmd/server/main.go RUN CGO_ENABLED=0 GOOS=linux go build -o /app/backup-performer ./cmd/backup_performer/main.go RUN CGO_ENABLED=0 GOOS=linux go build -o /app/list-backups ./cmd/list-backups/main.go -FROM alpine:latest - -RUN echo "@edge http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories +FROM alpine:3.20 +RUN echo "@edge http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ + echo "@community_edge http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories RUN apk add --no-cache \ rsync \ @@ -31,16 +25,14 @@ RUN apk add --no-cache \ fuse \ openssh-client \ ca-certificates \ - kopia@edge + kopia@edge \ + docker \ + docker-cli-compose@community_edge WORKDIR /app - COPY --from=builder /app/backea-server . COPY --from=builder /app/backup-performer . COPY --from=builder /app/list-backups . - COPY --from=builder /app/templates ./templates - RUN chmod +x /app/backea-server /app/backup-performer /app/list-backups - -CMD ["/app/backea-server"] +CMD ["/app/backea-server"] \ No newline at end of file diff --git a/compose.yaml b/compose.yaml index ba8b018..d5e7226 100644 --- a/compose.yaml +++ b/compose.yaml @@ -11,14 +11,20 @@ services: - ./config.yml:/app/config.yml:Z - ./kopia.env:/app/kopia.env:Z # Source directories to backup - map to identical paths inside container - - /home/sirir/Images:/home/sirir/Images + - /home/gevo/Images:/home/gevo/Images + - /home/gevo/Documents:/home/gevo/Documents + # Dedicated repository storage - ./kopiadata:/root/.kopia # SSH keys if needed - - /home/sirir/.ssh:/root/.ssh:ro + - /home/gevo/.ssh:/root/.ssh:ro - ./config/kopia:/tmp/kopia_configs + + - /var/run/docker.sock:/var/run/docker.sock + + environment: - HOME=/root cap_add: