{% extends "base.html" %} {% block title %}sharktopus — help{% endblock %} {% block content %}

Help & documentation

Quick start

pip install "sharktopus[ui]"
sharktopus --ui

# or from the command line:
sharktopus \
  --start 2024010200 --end 2024010318 --step 6 \
  --ext 24 --interval 3 \
  --lat-s -28 --lat-n -18 --lon-w -48 --lon-e -36

What the UI does

  • Submit — every CLI flag on a form.
  • Jobs — live progress, logs, cancel.
  • Inventory — what's on disk.
  • Quota — AWS / GCloud / Azure free-tier gauges.
  • Sources — registered mirrors + availability.
  • Setup — per-cloud provisioning wizards.
  • Credentials — what each provider can see.

Common recipes

WRF-canonical (13 vars × 49 levels): leave variables/levels empty on Submit — the form auto-fills.

Historical run (pre-2021): priority rda.

Large-bbox quick test: priority aws_crop, no nomads_filter.

Starting from zero on AWS / GCloud / Azure

Each cloud's setup wizard assumes you already have an account with billing enabled and an IAM identity with the right roles. If you don't, the full walk-through (sign-up, billing, IAM, verification, gotchas) lives on GitHub:

docs/ACCOUNT_SETUP.md

Quick sign-up links:

Once signed up, run sharktopus --setup {provider} in a terminal — it's interactive and handles the deploy end-to-end.

Accessing the UI remotely

The UI ships bound to 127.0.0.1 (local only) and has no authentication — it is designed for single-user, single-machine use. Two safe ways to drive it from another machine:

SSH port forward (recommended): runs the browser on your laptop and tunnels the port. Server stays local-only:

# on the remote server
sharktopus --ui        # default 127.0.0.1:8765

# on your laptop
ssh -L 8765:localhost:8765 user@server
# then open http://localhost:8765 in your local browser

SSH X-forwarding: runs the browser on the server, displays the window on your laptop. Heavier (X over network) but works:

ssh -X user@server
sharktopus --ui && firefox http://127.0.0.1:8765

Do not use --ui-host 0.0.0.0 on an untrusted network: anyone who reaches the port can submit jobs, read credentials, and browse the server filesystem through the directory picker. If you really need LAN access, put it behind an authenticated reverse proxy (nginx/Caddy + TLS + basic auth).

{% endblock %}