added docker as dependency
This commit is contained in:
parent
3d1a9f5438
commit
ac3b99d0bd
20
Dockerfile
20
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"]
|
10
compose.yaml
10
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:
|
||||
|
Loading…
x
Reference in New Issue
Block a user