1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-baserow

Клонировать/Скачать
installation.md 17 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 26.06.2025 16:02 92285f5

Установка плагина

Посетите наш подфорум сообщества плагинов для плагинов, созданных сообществом, и дальнейшего обсуждения.

Прежде чем мы начнем, плагины Baserow находятся в ранней стадии предварительной версии, поэтому есть важные моменты, которые нужно знать:

  • Плагин Baserow при установке имеет полный доступ к вашим данным и может выполнять любой код, который ему нравится. Baserow не изолирует, не проверяет безопасность и не выполняет никаких других проверок безопасности для плагинов.
  • Baserow пока не проверяет или не гарантирует безопасность каких-либо плагинов и не несет ответственности за любой ущерб или потери, вызванные установкой или использованием каких-либо плагинов.
  • Использование плагинов Baserow полностью на ваш страх и риск, убедитесь, что вы доверяете источнику и сделайте резервные копии перед использованием любого плагина.
  • Они рекомендованы только для продвинутых пользователей, которые уверенно чувствуют себя с Docker, томами, контейнерами и командной строкой.
  • Некоторые функции плагинов отсутствуют, например, нет пользовательского интерфейса для просмотра установленных плагинов, и все операции выполняются через командную строку.

Установка плагина

Существует несколько способов установки плагина:

Создание собственного образа all-in-one

Самый простой, быстрый и надежный способ установки плагина Baserow в настоящее время — это создание собственного образа на основе образа all-in-one Baserow.

  1. настоятельно рекомендуется сделать резервную копию данных перед установкой плагина, см. раздел руководства по установке Docker для более подробной информации о том, как это сделать.
  2. Убедитесь, что у вас установлен Docker, и он обновлен.
  3. Теперь создайте новый файл под названием Dockerfile. Мы будем использовать этот файл для создания пользовательского образа Baserow с установленными желаемыми плагинами.
  4. Затем скопируйте содержимое, показанное ниже, в ваш Dockerfile
FROM baserow/baserow:1.33.4

# Вы можете установить плагин из репозитория git:
RUN /baserow/plugins/install_plugin.sh \
    --git https://gitlab.com/example/example_baserow_plugin.git
    
# Или вы можете скачать tar.gz напрямую с URL
RUN /baserow/plugins/install_plugin.sh \
    --url https://example.com/plugin.tar.gz
    
# Или вы можете установить плагин из локальной папки, скопировав его в образ и \
# затем установив с помощью --folder
COPY ./some_local_dir_containing_your_plugin/ /baserow/data/plugins/your_plugin/
RUN /baserow/plugins/install_plugin.sh \
    --folder /baserow/data/plugins/your_plugin/

# Флаг --hash ниже заставит скрипт install_plugin.sh проверить, что
# плагин точно соответствует предоставленному хешу.
#
# Мы рекомендуем вам предоставить этот флаг, чтобы убедиться, что загруженный плагин
# не был злонамеренно изменен.
#
# Чтобы получить хеш плагина, просто запустите сборку Docker с произвольным значением --hash.
# Затем сборка завершится с ошибкой, и `install_plugin.sh` выведет хеш загруженного плагина.
# Затем вы можете заменить произвольное значение --hash на выведенное значение и собрать снова.
RUN /baserow/plugins/install_plugin.sh \
    --git https://gitlab.com/example/example_baserow_plugin.git \
    --hash hash_of_plugin_2
  1. Выберите команду RUN, которую хотите использовать для установки плагина, и удалите остальные, заменив примерные URL-адреса на адреса вашего плагина.
  2. Теперь соберите пользовательский образ Baserow с установленным плагином, выполнив: docker build -t my-customized-baserow:1.33.4 .
  3. Наконец, вы можете запустить новый пользовательский образ так же, как обычный образ Baserow: docker run -p 80:80 -v baserow_data:/baserow/data my-customized-baserow:1.33.4

Установка в существующий контейнер all-in-one Baserow

Этот метод устанавливает плагин в существующий контейнер и его том данных.

  1. настоятельно рекомендуется сделать резервную копию данных перед установкой плагина, см. раздел руководства по установке Docker для более подробной информации о том, как это сделать.
  2. Теперь выполните следующую команду для установки плагина в остановленный контейнер ( замените примерный URL-адрес и необязательный хеш на ваш желаемый плагин):
docker exec baserow \
  ./baserow.sh install-plugin \
  --git https://gitlab.com/example/example_baserow_plugin.git \
  --hash hash_of_plugin_1
  1. Наконец, перезапустите сервер Baserow для активации плагина, выполнив docker restart baserow.

Использование переменной окружения

Вы можете использовать переменные окружения BASEROW_PLUGIN_GIT_REPOS или BASEROW_PLUGIN_URLS при использовании образов Baserow для установки плагинов при запуске.

  1. Переменная BASEROW_PLUGIN_GIT_REPOS должна быть списком URL-адресов репозиториев git через запятую, которые будут использоваться для загрузки и установки плагинов при запуске.
  2. Переменная BASEROW_PLUGIN_URLS должна быть списком URL-адресов через запятую, которые будут использоваться для загрузки и установки файлов .tar.gz с плагинами Baserow при запуске.

Например, вы можете запустить новый контейнер Baserow с установленными плагинами, выполнив:

docker run \
  -v baserow_data:/baserow/data \ 
  # ... Все ваши обычные аргументы запуска здесь
  -e BASEROW_PLUGIN_GIT_REPOS=https://example.com/example/plugin1.git,https://example.com/example/plugin2.git
  baserow:1.33.4

Эти переменные будут активировать установку только при запуске контейнера. Для удаления плагина вам все равно придется вручную следовать инструкциям ниже.

Ограничения при установке в существующий контейнер

Если вы когда-либо удалите контейнер, в который были установлены плагины во время выполнения, и пересоздадите его, новый контейнер будет создан из образа baserow/baserow:1.33.4, который не имеет установленных плагинов.

Однако при установке плагина во время выполнения или сборки он сохраняется в папке /baserow/data/plugins контейнера, которая должна быть примонтирована внутри тома Docker. При запуске, если в этой директории найден плагин, который еще не установлен в текущий контейнер, он будет переустановлен.

Пока вы используете один и тот же том данных, вы не потеряете данные плагина даже если удалите и пересоздадите контейнеры. Единственное влияние — это то, что при первом запуске контейнера вы можете увидеть переустановку плагинов, если пересоздали контейнер с нуля.

Установка в отдельные образы служб Baserow

Baserow также предоставляет образы baserow/backend:1.33.4 и baserow/web-frontend:1.33.4, которые запускают только соответствующие службы backend/celery/web-frontend. Эти образы используются для более сложных самонастраиваемых развертываний, таких как многосервисный docker-compose, k8s и т.д.

Эти образы также предлагают CLI install-plugin/uninstall-plugin/list-plugins, когда они используются с командой docker run и указанными переменными окружения для плагинов, например:

docker run --rm baserow/backend:1.33.4 install-plugin ... 
docker run -e BASEROW_PLUGIN_GIT_REPOS=https://example.com/example/plugin1.git,https://example.com/example/plugin2.git --rm baserow/backend:1.33.4

Вы можете использовать эти скрипты точно так же, как описано выше, для установки плагина в Dockerfile или во время выполнения. Скрипты автоматически определяют, запущены ли они в образе только backend или только web-frontend, и устанавливают только соответствующий модуль плагина.

Шаблон плагина предоставляет примеры использования этого в файлах backend.Dockerfile и web-frontend.Dockerfile.

Удаление плагина

ПРЕДУПРЕЖДЕНИЕ: Это удалит плагин из вашей установки Baserow и удалит все связанные данные безвозвратно.

Удаление при использовании пользовательского Dockerfile

  1. настоятельно рекомендуется сделать резервную копию данных перед удалением плагина, см. раздел руководства по установке Docker для более подробной информации о том, как это сделать.
  2. Сначала остановите сервер Baserow — docker stop baserow
  3. docker run --rm -v baserow_data:/baserow/data baserow:1.33.4 uninstall-plugin plugin_name
  4. Теперь плагин удален вместе со всеми связанными данными.
  5. Отредактируйте ваш пользовательский Dockerfile и удалите плагин.
  6. Пересоберите образ — docker build -t my-customized-baserow:1.33.4 .
  7. Удалите старый контейнер с использованием старого образа — docker rm baserow
  8. Запустите новый образ с удаленным плагином
    • docker run -p 80:80 -v baserow_data:/baserow/data my-customized-baserow:1.33.4
  9. Если вы не сделаете это и когда-либо пересоздадите контейнер, ваш пользовательский образ все еще будет иметь установленный плагин, и новый контейнер снова запустится с установленным плагином.

Удаление плагина, установленного напрямую в контейнер

  1. настоятельно рекомендуется сделать резервную копию данных перед удалением плагина, см. раздел руководства по установке Docker для более подробной информации о том, как это сделать.
  2. Чтобы удалить плагин, не установленный с помощью Dockerfile, а вместо этого установленный напрямую в существующий контейнер, выполните следующую команду во время выполнения контейнера (предположим, что он называется baserow):
  3. docker exec baserow ./baserow.sh uninstall-plugin plugin_name
  4. Теперь плагин удален вместе со всеми связанными данными.
  5. Наконец, перезапустите Baserow, выполнив docker restart baserow.

Удаление плагина, установленного с помощью переменной окружения

  1. настоятельно рекомендуется сделать резервную копию данных перед удалением плагина, см. раздел руководства по установке Docker для более подробной информации о том, как это сделать.
  2. Чтобы удалить плагин, установленный с помощью одной из переменных окружения BASEROW_PLUGIN_GIT_REPOS или BASEROW_PLUGIN_URLS, необходимо убедиться, что вы удалите и пересоздадите контейнер с удаленным плагином из соответствующей переменной окружения. Если вы этого не сделаете и просто выполните uninstall-plugin с помощью exec и перезапустите контейнер, плагин будет переустановлен после перезапуска, так как переменная окружения все еще будет содержать старый плагин. Для этого необходимо:
    1. docker stop baserow
    2. docker run --rm -v baserow_data:/baserow/data baserow:1.33.4 uninstall-plugin plugin_name
    3. Теперь плагин удален вместе со всеми связанными данными.
    4. Наконец, пересоздайте контейнер Baserow с помощью той же команды docker run, которую вы использовали для его запуска, просто убедитесь, что удаленный плагин был удален из переменной окружения.

Проверка установленных плагинов

Используйте команду list-plugins или встроенный скрипт /baserow/plugins/list_plugins.sh, чтобы проверить какие плагины в настоящее время установлены.

docker run \
  --rm \
  -v baserow_data:/baserow/data \ 
  baserow:1.33.4 list-plugins 

# или в работающем контейнере

docker exec baserow /baserow/plugins/list_plugin.sh

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-baserow.git
git@api.gitlife.ru:oschina-mirror/mirrors-baserow.git
oschina-mirror
mirrors-baserow
mirrors-baserow
develop