OmniTools — a self-hosted collection of web-based everyday tools (image/PDF/text/number/date utilities) that run entirely in the browser, with no data leaving your machine. Deployed as a single host-networked Nomad job (static SPA served by nginx).
Needs nomad-pack on PATH. The script only adds the nomploy registry and runs this pack.
Source ↗ Project ↗ ★ 10.3k ⚑ Report an issue
Save as values.hcl, edit, then run:
# The name of the Nomad job.
job_name = "omni-tools"
# The Nomad namespace to deploy into.
namespace = "default"
# The datacenters to deploy to.
datacenters = ["*"]
# The OmniTools container image. Pin a tag in production.
image = "ghcr.io/iib0011/omni-tools:latest"
# Host port for the OmniTools web UI.
port = 8080
# Number of instances to run (the app is stateless).
count = 1
# Placement constraints. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true".
constraints = []
# Resources for the OmniTools task.
resources = {
cpu = 200
memory = 128
}
| Name | Type | Default | Description |
|---|---|---|---|
| job_name | string | "omni-tools" | The name of the Nomad job. |
| namespace | string | "default" | The Nomad namespace to deploy into. |
| datacenters | list | ["*"] | The datacenters to deploy to. |
| image | string | "ghcr.io/iib0011/omni-tools:latest" | The OmniTools container image. Pin a tag in production. |
| port | number | 8080 | Host port for the OmniTools web UI. |
| count | number | 1 | Number of instances to run (the app is stateless). |
| constraints | list | [] | Placement constraints. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true". |
| resources | object | {
cpu = 200
memory = 128
} | Resources for the OmniTools task. |
No variables match.
OmniTools is a self-hosted collection of web-based everyday tools — image, PDF, text, number, date/time, list and data utilities — that run entirely in your browser. No data is uploaded to a server, so it's a private alternative to the many "online tools" sites.
This pack runs OmniTools as a single host-networked Nomad job: the static SPA served by nginx. nginx is reconfigured (via a mounted server block) to listen on the chosen host port instead of 80, so it won't collide with a reverse proxy.
nomad-pack run omni-tools --registry=nomploy
Then open http://<node-ip>:8080.
| Variable | Default | Notes |
|---|---|---|
port |
8080 |
Web UI host port |
count |
1 |
Instances to run (the app is stateless) |
The app is stateless — there is no database and nothing to persist. Scale it by raising
count.