**Purpose**: Cross-platform backup tool for Windows, macOS & Linux with fast, incremental backups, client-side end-to-end encryption, compression and data deduplication. CLI and GUI included. 

```jsx title="docker-compose.yml"
version: '3.7'
services:
    kopia:
        image: kopia/kopia:latest
        hostname: kopia-backup
        user: root
        restart: always
        ports:
            - 51515:51515
        environment:
            - KOPIA_PASSWORD=${KOPIA_ENRYPTION_PASSWORD}
            - TZ=America/Denver
        privileged: true
        volumes:
            - /srv/containers/kopia/config:/app/config
            - /srv/containers/kopia/cache:/app/cache
            - /srv/containers/kopia/logs:/app/logs
            - /srv:/srv
            - /usr/share/zoneinfo:/usr/share/zoneinfo
        entrypoint: ["/bin/kopia", "server", "start", "--insecure", "--timezone=America/Denver", "--address=0.0.0.0:51515", "--override-username=${KOPIA_SERVER_USERNAME}", "--server-username=${KOPIA_SERVER_USERNAME}", "--server-password=${KOPIA_SERVER_PASSWORD}", "--disable-csrf-token-checks"]

        networks:
            docker_network:
              ipv4_address: 192.168.5.14
networks:
  default:
    external:
      name: docker_network
  docker_network:
    external: true
```
!!! note "Credentials"
    Your username will be `kopia@kopia-backup` and the password will be the value you set for `--server-password` in the entrypoint section of the compose file.  The `KOPIA_PASSWORD:` is used by the backup repository, such as Backblaze B2, to encrypt/decrypt the backed-up data, and must be updated in the compose file if the repository is changed / updated.


```jsx title=".env"
KOPIA_ENRYPTION_PASSWORD=PasswordUsedToEncryptDataOnBackblazeB2
KOPIA_SERVER_PASSWORD=ThisIsUsedToLogIntoKopiaWebUI
KOPIA_SERVER_USERNAME=kopia@kopia-backup
```
