diff --git a/etherpad/app.yaml b/etherpad/app.yaml new file mode 100644 index 0000000..dc7421a --- /dev/null +++ b/etherpad/app.yaml @@ -0,0 +1,5 @@ +name: etherpad +is: etherpad +description: Etherpad is a highly customizable open source online editor providing collaborative editing in real-time. +icon: https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/etherpad.svg +latest: "2" diff --git a/etherpad/versions/2/README.md b/etherpad/versions/2/README.md new file mode 100644 index 0000000..b055ec5 --- /dev/null +++ b/etherpad/versions/2/README.md @@ -0,0 +1,36 @@ +# Etherpad + +Etherpad is a real-time collaborative document editor. Multiple users can write and edit documents simultaneously. + +## Dependencies + +- **PostgreSQL** - Database for storing pads and history + +## Configuration + +Key settings in `config.yaml`: + +- **domain** - Where Etherpad will be accessible +- **storage** - Persistent volume size (default: `2Gi`) +- **title** - Instance name shown in the browser (default: `Etherpad`) + +## Usage + +No account is required to create or edit pads. Just visit the app URL and: + +- Click **New Pad** to create a document +- Share the pad URL with collaborators — anyone with the link can edit in real time + +## Admin Panel + +An admin panel is available at `/admin`: +- **Username**: `admin` +- **Password**: value of `adminPassword` in your `secrets.yaml` + +Use the admin panel to manage plugins, view connected users, and configure the instance. + +## Notes + +- Pads are identified by URL — anyone with the link can view and edit by default +- Password-protected pads can be created via the admin panel settings +- The admin panel also provides access to the plugin manager for extending functionality diff --git a/etherpad/versions/2/db-init-job.yaml b/etherpad/versions/2/db-init-job.yaml new file mode 100644 index 0000000..60e2025 --- /dev/null +++ b/etherpad/versions/2/db-init-job.yaml @@ -0,0 +1,63 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: etherpad-db-init + labels: + component: db-init +spec: + template: + metadata: + labels: + component: db-init + spec: + restartPolicy: OnFailure + securityContext: + runAsNonRoot: true + runAsUser: 999 + runAsGroup: 999 + seccompProfile: + type: RuntimeDefault + containers: + - name: db-init + image: postgres:17 + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + readOnlyRootFilesystem: false + command: ["/bin/bash", "-c"] + args: + - | + PGPASSWORD=${POSTGRES_ADMIN_PASSWORD} psql -h ${DB_HOSTNAME} -U postgres <