Skip to content

issue #3062: document Hop Server deployment patterns - #7920

Merged
hansva merged 2 commits into
apache:mainfrom
mattcasters:issue-3062
Aug 13, 2026
Merged

issue #3062: document Hop Server deployment patterns#7920
hansva merged 2 commits into
apache:mainfrom
mattcasters:issue-3062

Conversation

@mattcasters

Copy link
Copy Markdown
Contributor

What this is

Documentation for issue #3062: after you develop a Hop project, how do you actually get it onto a running Hop Server (or decide you do not need one)?

Docs only. No engine or CLI changes.

Deployment manual

New section under Hop Server → Deploying Hop Server:

  • Overview (deploying.adoc) — project vs environment, comparison table, and when a Hop Server is not needed at all.
  • Project in a Docker image — CI bakes the project into FROM apache/hop at /your-project. Same image can be:
    • short-lived: Airflow / Kubernetes Job / CronJob runs hop-run and exits (often the better production pattern). Persist execution information to a volume, database, OpenSearch, Neo4j or Elastic.
    • long-lived: roll Hop Server with docker run, Compose, Helm, Kubernetes or OpenShift.
  • Remote run with export resources — bare server; client (hop-run / Airflow / Gui) sends a ZIP. Documents what is not in the ZIP (env JSON, extra config files, JDBC, plugins, large data files) and why named-resource source/target folders matter.
  • Git checkout on the server — clone, hop-conf, hop-server.sh -e prod, git pull, and what needs a restart.

Sample Dockerfile, Compose file, GitHub Actions workflow and systemd unit live under docs/.../assets/files/hop-server/.

-e is enough to start hop-run / hop-server; the project name comes from the environment. HOP_PROJECT_NAME is still required in Docker because the entrypoint creates the project before the environment.

OpenSearch execution information location

The OpenSearch location type was undocumented. Adds opensearch-location-type.adoc (options, create-index mapping) and a comparison with Elastic: basic auth vs API key, ignore-SSL, /_plugins/_sql vs _search, nested vs dotted mappings. Wired into execution-information-location.adoc, the metadata index, nav, and the Elastic page.

Cross-links

Pointers from Hop Server, hop-run, remote run configs, Docker tech manual, Helm README, Airflow how-to, web-services how-to, projects, best practices, and Getting Started.

Add a deployment manual for getting a git-hosted project onto Hop
Server (image, export resources, git checkout), document the
short-lived container alternative, and add the missing OpenSearch
execution information location page.
@hansva
hansva merged commit 282ba3e into apache:main Aug 13, 2026
4 checks passed
jefersonminatozaki pushed a commit to jefersonminatozaki/hop that referenced this pull request Aug 14, 2026
Add a deployment manual for getting a git-hosted project onto Hop
Server (image, export resources, git checkout), document the
short-lived container alternative, and add the missing OpenSearch
execution information location page.

Co-authored-by: Hans Van Akelyen <hans.van.akelyen@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants