Перейти к основному контенту

Разработка собственных приложений для Panda

Panda - встроенный механизм запуска приложений в изолированных контейнерах докера, замена RemoteApp.

Чаще всего Panda используется для доступа к веб-приложениям, то есть Panda запускает контейнер с Chrome, автоматически заходит на нужный сайт и авторизуется в нем.

По умолчанию доступна публикация Chrome и DBeaver, но есть возможность создавать и собственные приложения для публикации в Panda.

Структура апплета Panda на примере SQL Developer:

Виртуальное приложение — это Linux-контейнер с VNC. Panda передаёт переменные окружения с данными авторизации (JMS_TOKEN).

Пример структуры:

Sql Developer/
├── docker-compose.yml
├── Dockerfile
├── entrypoint.sh
├── sqldeveloper-23.1.1.345.2114-no-jre.zip
├── .config/dconf/user
├── app/bin/start-vnc.sh
├── app/bin/start-xvfb.sh
└── etc/supervisor/app.conf

docker-compose:

services:
  sql_developer:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "6800:5900"

manifest.yml:

name: Sql_Developer_23
display_name: Sql Developer
comment: SQL Developer — мощное IDE для Oracle.
version: 0.1
author: JumpServer Team
type: panda
image_name: nickyang00/app_sqldeveloper_vapp:v0.1.0
image_protocol: vnc
image_port: 5900
tags: [database]
protocols: [oracle]

Исходный код Dbeaver-app для Panda доступен по этой ссылке.
Исходный код Chrome-App для Panda доступен по этой ссылке.