Nomploy Nomad Packs

← All packs

anonymousoverflow v0.1.0

Networking

AnonymousOverflow — a privacy-friendly, ad-free front-end for Stack Overflow (and the Stack Exchange network) that strips trackers and cleans up the reading experience. Deployed as a single host-networked Nomad service.

nomad-pack run anonymousoverflow --registry nomploy
…or one line (add registry + run)
curl -fsSL https://packs.nomploy.com/install.sh | sh -s -- anonymousoverflow

Needs nomad-pack on PATH. The script only adds the nomploy registry and runs this pack.

1 task http 8080 image ghcr.io/httpjamesm/anonymousoverflow:latest tracks :latest image bumped today
Variables 9
values.hcl

Save as values.hcl, edit, then run:

nomad-pack run anonymousoverflow -f values.hcl --registry nomploy
# The name of the Nomad job.
job_name = "anonymousoverflow"

# The Nomad namespace to deploy into.
namespace = "default"

# The datacenters to deploy to.
datacenters = ["*"]

# The AnonymousOverflow container image. Pin a tag in production.
image = "ghcr.io/httpjamesm/anonymousoverflow:latest"

# Host port for the AnonymousOverflow web UI.
port = 8080

# Public URL where this instance is served (required), e.g. https://ao.example.com.
app_url = "http://localhost:8080"

# Secret used to sign JWT cookies. CHANGE THIS to a long random value.
jwt_signing_secret = "change_me_to_a_long_random_jwt_secret_0000"

# Placement constraints. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true".
constraints = []

# The task resources.
resources = {
    cpu    = 200
    memory = 128
  }
NameTypeDefaultDescription
job_name string
"anonymousoverflow"
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/httpjamesm/anonymousoverflow:latest"
The AnonymousOverflow container image. Pin a tag in production.
port number
8080
Host port for the AnonymousOverflow web UI.
app_url string
"http://localhost:8080"
Public URL where this instance is served (required), e.g. https://ao.example.com.
jwt_signing_secret set me string
"change_me_to_a_long_random_jwt_secret_0000"
Secret used to sign JWT cookies. CHANGE THIS to a long random value.
constraints list
[]
Placement constraints. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true".
resources object
{
    cpu    = 200
    memory = 128
  }
The task resources.
Readme

anonymousoverflow

AnonymousOverflow is a privacy-respecting front-end for Stack Overflow and the wider Stack Exchange network. It renders questions and answers without ads, trackers or the login walls, in a clean, fast, readable layout — and pairs nicely with redirector extensions like LibRedirect.

This pack runs AnonymousOverflow as a single host-networked Nomad service. It's stateless.

Deploy

nomad-pack run anonymousoverflow --registry=nomploy \
  --var app_url=https://ao.example.com \
  --var jwt_signing_secret=$(openssl rand -hex 24)

Open http://<node-ip>:8080.

Configuration

Variable Default Description
image ghcr.io/httpjamesm/anonymousoverflow:latest Container image (pin a tag).
port 8080 Host port for the web UI.
app_url http://localhost:8080 Public URL of the instance.
jwt_signing_secret placeholder JWT cookie secret — change this.
resources 200 MHz / 128 MB CPU and memory for the task.

AnonymousOverflow keeps no persistent state.