В начале декабря я публиковал статью про Postgresus 2.0 — инструмент для резервного копирования PostgreSQL. С момента этой статьи пришло много запросов на добавление других баз данных, много положительной обратной связи от пользователей и набралось больше 1000 звёзд на GitHub.

А потом я узнал, что нарушил торговый знак 🥲. Оказывается, нельзя брать первое понравившееся название — и использовать его. Точнее можно, но с оговорками.

В итоге было принято решение о маленьком ребрендинге. Теперь Postgresus — это Databasus. И поддерживает другие базы: MySQL, MariaDB и MongoDB (при этом оставляя основной фокус на PostgreSQL).

Ниже — детальнее, что из себя представляет проект и почему произошло переименование.


Содержание

  • О проекте

  • Как развернуть проект

    • Через shell скрипт

    • Через docker-compose.yml

    • Через Docker команду

    • Через Kubernetes Helm

  • Почему проект изменил название?

  • Заключение

О проекте

Databasus — это open source инструмент для резервного копирования баз данных. Главная задача проекта: делать копии баз данных по расписанию и сохранять их как локально, так и во внешних хранилищах. При этом уведомлять пользователя о статусе: когда копирование закончилось или провалилось.

Проект разворачивается одной командой в Docker. Его можно установить через shell скрипт, Docker команду, docker-compose.yml и теперь через Helm для Kubernetes. Детальнее о способах установки.

Функции:

  • Поддержка баз данных PostgreSQL (основной фокус проекта), MySQL, MariaDB и MongoDB.

  • Сохранение резервных копий локально, в S3, CloudFlare R2, Google Drive, Azure Blob Storage, NAS, через SFTP и rclone. Детальнее здесь.

  • Отправка уведомлений о статусе в Slack, Discord, Telegram, MS Teams, по почте и в настраиваемый вебхук. Детальнее здесь.

  • Разделение баз по проектам, выдача доступов другим пользователям и хранение аудит логов. Детальнее здесь.

  • Шифрование резервных копий и чувствительной информации (пароли, секреты и т.д.). Детальнее здесь.

  • Поддержка как self hosted баз, так и облачных.

Сайт - https://databasus.com
GitHub - https://github.com/databasus/databasus

Интерфейс проекта выглядит так:

Темная тема
Темная тема
Светлая тема
Светлая тема

Как развернуть проект?

Есть 4 способа развернуть проект:

  • через shell скрипт;

  • через docker-compose.yml;

  • через Docker команду;

  • через k8s Helm.

Через shell скрипт

Shell скрипт сначала устанавливает Docker, затем создаёт docker-compose.yml файл и запускает Databasus:

sudo apt-get install -y curl && \
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bash

Через docker-compose.yml

Создаем docker-compose.yml:

services:
  databasus:
    container_name: databasus
    image: databasus/databasus:latest
    ports:
      - "4005:4005"
    volumes:
      - ./databasus-data:/databasus-data
    restart: unless-stopped

И запускаем:

docker compose up -d

Через Docker команду

docker run -d \
  --name databasus \
  -p 4005:4005 \
  -v ./databasus-data:/databasus-data \
  --restart unless-stopped \
  databasus/databasus:latest

Через Kubernetes Helm

helm install databasus oci://ghcr.io/databasus/charts/databasus \
  -n databasus --create-namespace

kubectl port-forward svc/databasus-service 4005:4005 -n databasus
# Access at http://localhost:4005

Во всех 4-х случаях проект будет доступен на порту 4005.

Почему проект изменил название?

Тут есть несколько причин: и изменение позиционирования, и поддержка других баз данных (помимо PostgreSQL), и понимание, что Postgresus — слишком "узкоспециализированное" название.

Но решающим стал тот ф��ктор, что "Postgres" — это товарный знак. Его нельзя использовать как часть своего названия. А я его включил целиком в своё название... Причём до ~2020-го года, до момента, когда PostgreSQL зарегистрировал товарный знак, так было можно делать. Пример этому тот же Postgres Pro. Но сейчас уже нельзя.

Точнее можно пользоваться названием под предлогом fair use. И, в целом, PostgreSQL способствуют такому подходу. Но все-таки с непонятными последствиями и шансом, что когда-то взгляды юристов поменяются — и придется переименовываться позже (ничего смертельного, конечно, но Docker Hub pull'ы потеряются).

Узнал я об этом, когда мысль "а не нарушаю ли я что-нибудь" пришла мне в голову в душе. И я все-таки догадался переспросить у ChatGPT. Оказалось, что все-таки нарушаю, а у PostgresSQL это детально расписано.

Заключение

Databasus с новым названием растёт и становится всё более полезным open source проектом. После каждой статьи или упоминания я очень радуюсь, что проект находит такой отклик у сообщества и действительно полезен.

Рекомендую прочитать предыдущие две статьи, если понравилась эта:

Если проект понравился или оказался полезным — буду раз звезде на GitHub или если поделитесь со знакомыми ❤️. И Telegram канал у меня есть, но это так, вдруг интересно.


Также может быть интересно: