Copybird is open-source cloud-native universal backup tool for databases and files.

  • Create database backup
  • Compress backup file
  • Encrypt backup file
  • Send it to various destinations fast and secure
  • Get notification about backup status in messagers and notification services
  • Enjoy simple backup as a service with k8s backup controller
Fork Me
1.
Step1
2.
Step2
3.
Step3
4.
Step4
5.
Step5
Backup
1.
Postgres
Postgres
Mysql
Mysql
MongoDB
MongoDB
Postgres
Postgres
Mysql
Mysql
MongoDB
MongoDB
2.
3.
4.
5.
Slack

Slack

Telegram

Telegram

Kafka

Kafka

Nats

Nats

Pushbullet

Pushbullet

RabbitMQ

RabbitMQ

Twilio

Twilio

PagerDuty

PagerDuty

Emails

Emails

Amazon SES

Amazon SQS

Webcallback

Kubernetes

Run custom K8s controller with Backup custom resources

How to Run the tool

There are different ways you can use this tool:

Run locally

  • First get the source code on your machine

    go get -u github.com/copybird/copybird

  • Then run it with go run main.go to see helpers for various optional parameters

Run with Docker

Run docker run copybird/copybird to see the available optional parameters

Use Backup Custom Controller/Operator for k8s

  • First create custom resource definition in your cluster:

    kubectl apply -f operator/crd/crd.yaml

  • To run the controller:

    go run main.go operator

  • And then in a separate shell, create custom resource:

    kubectl create -f operator/example/backup-example.yaml

  • As output you get the following logs when creating, updating or deleting custom resource:

    INFO[0000] Successfully constructed k8s client
    INFO[0000] Starting Foo controller
    INFO[0000] Waiting for informer caches to sync
    INFO[0001] Starting workers
    INFO[0001] Started workers

  • You can modify example file as you wish to get proper configuration for your jobs

Mad Devs Built with Mad Devs support for the community

Fork Me

Our Team

John Doe

Programmer

John Doe

Programmer

John Doe

Programmer

John Doe

Programmer

John Doe

Programmer