Use Kopia for Self-Hosted Scheduled Backups to S3

Use Kopia for Self-Hosted Scheduled Backups to S3
Kopia snapshots screenshot

Kopia offers a flexible, secure, and scalable solution to manage backups across various environments. Its compatibility with cloud storage services like Amazon S3 makes it an ideal choice for businesses seeking a reliable backup solution that they can manage independently. The main benefits of using Kopia include:

  • Encryption: Kopia ensures that all backups are encrypted at the source before transmission, providing an extra layer of security.
  • Incremental Snapshots: Save time and bandwidth with Kopia’s incremental backup feature, which only uploads changes since the last snapshot.
  • Fine-grained Policies: Tailor backup frequencies and retention policies to fit your specific business needs without unnecessary expense or system strain.

Kopia screencast

Setting Up Your Environment

To get started with Kopia and Amazon S3, follow these simple steps:

  1. Initialize the Kopia Repository
    First, set up your repository in Amazon S3. This repository will store all your encrypted snapshots. You'll need to provide your AWS credentials during this step to allow Kopia to access your S3 bucket.
  2. Configure Security Settings
    Security is paramount. Ensure your Kopia installation is configured to encrypt all backups before they leave your server. You'll also want to set strong access controls on your S3 bucket to prevent unauthorized access.
  3. Define Backup Policies
    Determine how often backups should occur and how long they should be retained. Kopia allows you to customize these settings to balance between backup comprehensiveness and resource utilization.
  4. Select Data for Backup
    Choose which directories and files are critical for your operations. For servers running applications like Docker, don’t forget to include volumes where application data is stored.
  5. Schedule and Automate Snapshots
    Automate your backup process by scheduling snapshots at intervals that make sense for your workload and operational hours.

Recovery and Restoration

One of the most critical aspects of any backup solution is the ability to restore data quickly and effectively. Kopia simplifies the restoration process, allowing you to select a snapshot from your repository and restore it directly to your server, minimizing downtime and disruption.

Managed Self-Hosted Kopia

Data loss can be detrimental, but with Kopia and Amazon's S3, Formable can configure a self-hosted, secure, and efficient backup system that keeps your critical data safe. We invite you to watch our screencast to see Kopia in action and start implementing a more resilient data security strategy today. Your data’s safety is invaluable—ensure it's protected with proven backup solutions.

Formable's Kopia Portainer stack docker-compose.yml

version: "3"

services:
  kopia:
      image: kopia/kopia:latest
      user: "0:0"
      restart: unless-stopped
      privileged: true
      cap_add:
        - SYS_ADMIN
      security_opt:
        - apparmor:unconfined
      devices:
        - /dev/fuse:/dev/fuse:rwm
      command:
        - server
        - start
        - --disable-csrf-token-checks
        - --insecure
        - --address=0.0.0.0:51515
        - --server-username=admin
        - --server-password=yourpassword
      volumes:
        - /mnt/kopia:/tmp:shared
        - config:/app/config
        - cache:/app/cache
        - logs:/app/logs
        - /home/forge:/backup:ro
        - /var/lib/docker/volumes:/dockerbackup:ro
        - /var/lib/mysql:/mysqlbackup:ro
      ports:
        - 51515:51515
      environment:
        KOPIA_PASSWORD: yourmasterpassword
        USER: root
        TZ: America/New_York

volumes:
  config:
  cache:
  logs:

Managed Self Hosted Kopia

Formable sets up, monitors and updates your cloud applications.

💡
Formable installs Kopia at your own subdomain, for example: backups.formable.app
🔒
Free Let's Encrypt certificate setup and renewal with certbot.
📡
We monitor your application subdomain with Formable's Uptime Kuma server.
⚙️
Formable updates your application and checks for any breaking changes.
✉️
Formable starts you on our Mailgun SMTP server for email notification delivery. We can then get you setup with your own Mailgun account and subdomain, so you can track deliverability.
🚨
Formable resolves any application downtime issues and supports your team.
Mastodon