Skip to content

Repository files navigation

GitHub ReleaseGitHub Package Repository

Kopia is a fast and secure open-source backup/restore tool that allows you to create encrypted snapshots of your data and save the snapshots to remote or cloud storage of your choice, to network-attached storage or server, or locally on your machine.

kopia

Variants

TagDescriptionPlatforms
latestAlpine + latest Kopia releaseamd64, arm64

Pin a specific upstream Kopia release with the semver tag:

ghcr.io/imagegenius/kopia:0.23.0

Requirements

  • Config volume: mount /config for Kopia repository config, logs, and credentials.
  • FUSE: mount /dev/fuse and add SYS_ADMIN if using filesystem mounts.
  • Credentials: set USERNAME and PASSWORD on first start to generate /config/htpasswd.

Usage

Docker Compose

---
services:
kopia:
image: ghcr.io/imagegenius/kopia:latestcontainer_name: kopiahostname: kopiacap_add:
- SYS_ADMINenvironment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- USERNAME=kopia
- PASSWORD=kopia
- KOPIA_PERSIST_CREDENTIALS_ON_CONNECT=true #optional
- CLI_ARGS= #optionalvolumes:
- path_to_appdata:/config
- path_to_source:/source
- path_to_cache:/cache
- path_to_local:/local #optionalports:
- 51515:51515devices:
- /dev/fuse:/dev/fuserestart: unless-stopped

Parameters

ParameterFunction
--hostname=kopiaContainer hostname
--cap-add=SYS_ADMINRequired for FUSE mounts
--device /dev/fuse:/dev/fuseAllows FUSE mounts to function
-p 51515WebUI port
-e PUID=1000UID for permissions — see below
-e PGID=1000GID for permissions — see below
-e TZ=Etc/UTCTimezone, see this list
-e USERNAME=kopiaUsername used to generate /config/htpasswd on first start
-e PASSWORD=kopiaPassword used to generate /config/htpasswd on first start
-e KOPIA_PERSIST_CREDENTIALS_ON_CONNECT=truePersist repository credentials after connect
-e CLI_ARGS=Override arguments after the kopia command
-v /configKopia config, logs, and htpasswd
-v /sourceBackup source path
-v /cacheTemporary upload/cache path
-v /localLocal filesystem repository path

Application Setup

By default, Kopia starts with:

kopia server start \
--insecure \
--disable-csrf-token-checks \
--address=0.0.0.0:51515 \
--htpasswd-file /config/htpasswd

Set CLI_ARGS to override the arguments after kopia. Keep CLI_ARGS on one line.

User / Group IDs & umask

Set PUID=1000PGID=1000 to match volume ownership on the host (id user to find yours). Optionally UMASK=022 (works subtractively, not additively).

Updating

docker pull ghcr.io/imagegenius/kopia:latest
docker stop kopia && docker rm kopia
# recreate with the same docker run parameters
docker image prune # optional: remove dangling images

Or with compose: docker compose pull && docker compose up -d.

Support

How this image is built

This repo is built with GitHub Actions, based on the workflow shape from home-operations/containers.

About

No description, website, or topics provided.

Resources

Stars

14 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages