Skip to content

Etherpad does not start behind corporate firewall. #7911

@frwa-enpace

Description

@frwa-enpace

Describe the bug
Etherpad cannot start in offline or air-gapped environments (e.g. behind a corporate firewall). Two root causes:

  1. The packageManager field in package.json causes the package manager (via corepack) to attempt a network call to verify/update itself on startup. Without internet access, this fails and the container never starts.
  2. The settings privacy.updateCheck, privacy.pluginCatalog, and updates.* in settings.json cannot be overridden via environment variables, making it impossible to disable outbound network calls without modifying settings.json inside the container image.

To Reproduce

  1. Deploy Etherpad in a Docker container with no outbound internet access (or behind a corporate firewall blocking package registry traffic).
  2. Start the container.
  3. Observe startup failure caused by the packageManager resolution/update step.

To hit issue #2: attempt to disable update checks and plugin catalog lookups purely via environment variables — no documented mapping exists.

Expected behavior

  • Etherpad should start successfully in offline/air-gapped environments without requiring internet access at startup.
  • The settings privacy.updateCheck, privacy.pluginCatalog, and updates.* should be configurable via environment variables (e.g. ETHERPAD_PRIVACY_UPDATE_CHECK=false) so operators can disable outbound calls without modifying files inside the container image.

Proposed fixes

  • Remove (or make optional) the packageManager entry in package.json to prevent forced network calls at startup.
  • Add environment-variable mappings for privacy.updateCheck, privacy.pluginCatalog, and updates.*.

Screenshots
N/A

Server (please complete the following information):

  • Etherpad version: 3.2.0
  • OS: RHEL 9

Desktop (please complete the following information):
N/A — issue occurs at server startup before any client interaction.

Smartphone (please complete the following information):
N/A

Additional context
This is a common pain point for enterprise and self-hosted deployments where security policies prohibit outbound connections from application containers. Both fixes are low-risk and would significantly improve offline/air-gapped deployment support.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions