Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/long2ice/databack
Backup your data from MySQL/PostgreSQL/SSH etc. to any other storages
https://github.com/long2ice/databack
backup mysql postgresql
Last synced: 24 days ago
JSON representation
Backup your data from MySQL/PostgreSQL/SSH etc. to any other storages
- Host: GitHub
- URL: https://github.com/long2ice/databack
- Owner: long2ice
- License: apache-2.0
- Created: 2023-03-15T07:21:39.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-27T03:11:40.000Z (about 1 year ago)
- Last Synced: 2024-12-03T09:53:01.605Z (about 1 month ago)
- Topics: backup, mysql, postgresql
- Language: Python
- Homepage: https://databack-demo.long2ice.io
- Size: 612 KB
- Stars: 65
- Watchers: 3
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# databack
`databack` is a tool to back up your data from MySQL/PostgreSQL/SSH etc. to any other storages like S3, SCP etc. Which
can be run cron job to back up your data automatically, and you can also restore your data from backup files.## Features
- MySQL/PostgreSQL/SSH/Local data source.
- S3/SCP/Local storage.
- Cron job to back up your data automatically.
- i18n support (English and Chinese).
- Web UI to manage your backup tasks.## Screenshots
You can try it on [Demo](https://databack-demo.long2ice.io/) site.
![databack](./images/home.png)
![databack](./images/datasource.png)## Deployment
The easiest way to deploy `databack` is to use `docker-compose`.
```yml
version: "3"
services:
databack:
restart: always
env_file: .env
network_mode: host
image: ghcr.io/long2ice/databack/databack:full
```## Configuration
Just set environment variables in `.env` file.
```dotenv
DB_URL=mysql://root:[email protected]:3306/databack
DEBUG=True
REDIS_URL=redis://127.0.0.1:6379/0
SENTRY_DSN='xxx' # remove it if you don't use sentry
ENV=production
WORKER=True
```## Worker
By default, `databack` will start a builtin worker to run tasks when environment variable `WORKER` is `True`. If you
want to start multiple workers, you can run `rearq databack.tasks:rearq worker` command.For `docekr-compose` deployment:
```yml
version: "3"
services:
worker:
restart: always
env_file: .env
network_mode: host
image: ghcr.io/long2ice/databack/databack:full
entrypoint: rearq databack.tasks:rearq worker -t
```## Frontend
The frontend project is [here](https://github.com/long2ice/databack-web).
## License
This project is licensed under the [Apache-2.0](./LICENSE) License.