machines & lifecycle
create, size, power, pause, copy, delete. every task works on all three surfaces: one-shot over ssh dashboard@ironwire.sh, the ironwire CLI from inside a machine, or the dashboard.
creating a machine
one command. you get an HTTPS URL and an SSH endpoint:
ssh
$ ssh dashboard@ironwire.sh create web created web url: https://web.sam.ironwire.xyz ssh: ssh sam+web@ironwire.sh
machine statuses
| Status | Meaning |
|---|---|
booting | being created or started; not reachable yet. |
running | up. SSH, the file manager, and the HTTPS URL all work. |
restarting | crashed; being restarted automatically. |
stopped | powered off. name, IP, and disk are kept. |
paused | frozen with RAM and processes snapshotted; see below. |
failed | boot failed or too many crashes in a row. fix the cause, then start it. |
during planned service maintenance machines can also show a maintenance state: frozen the same way pause works, resumed automatically when maintenance ends.
power: stop, start, restart
ssh
$ ssh dashboard@ironwire.sh stop web stopped web $ ssh dashboard@ironwire.sh start web started web $ ssh dashboard@ironwire.sh restart web restarted web
cli
$ ironwire stop web stopped web $ ironwire start web started web $ ironwire restart web restarted web
requires orchestration mode on the machine you run it from.
dashboard
select the machine, press s to stop or start and r to restart, or press Space for the actions popup.
stop shuts the machine down; name, IP address, and disk are kept. start boots it cold on the same IP. restart is stop-then-start, and is how a pending resize, env-var change, or drive attach/detach takes effect.
crashes restart automatically, with an increasing delay between attempts, up to a cap. too many in a row marks the machine failed. machines with --restart=never just go to stopped. stops you asked for never trigger an automatic restart. uptime counts from your last intentional start; service restarts don't reset it.
pause and resume
ssh
$ ssh dashboard@ironwire.sh pause web paused web
dashboard
select the running machine and press p, or use the Space actions popup.
pause is a full-machine freeze, like closing a laptop lid. the entire state, RAM included, is snapshotted to disk. resume continues exactly where it left off: same processes, same in-memory state, same IP and endpoints.
ssh
$ ssh dashboard@ironwire.sh resume web resumed web
dashboard
select the paused machine and press p again, or use the Space actions popup.
- survives: running processes, memory contents, the disk, the IP and URLs.
- doesn't survive: TCP connections from the outside; clients reconnect.
- quota: a paused machine frees its vCPU and memory back to your budget; its disk still counts (root disk plus a snapshot roughly the size of its memory). resume re-checks the vCPU and memory quota; if the machine no longer fits, it stays paused. see quotas.
copying a machine
ssh
$ ssh dashboard@ironwire.sh copy web web-staging copied web → web-staging url: https://web-staging.sam.ironwire.xyz ssh: ssh sam+web-staging@ironwire.sh
cli
$ ironwire copy web web-staging copied web → web-staging url: https://web-staging.sam.ironwire.xyz ssh: ssh sam+web-staging@ironwire.sh
requires orchestration mode on the machine you run it from.
dashboard
select a paused or stopped machine and press y, or use the Space actions popup.
copy clones the disk into a brand-new machine. pause or stop the source first, so the disk is settled. the copy inherits the source's sizes, restart policy, and shared-drive attachment, but not its RAM state (it boots fresh), extra published ports, custom domain, or env vars.
resizing
ssh
$ ssh dashboard@ironwire.sh resize web --cpu=4 --mem=4G resized web to 4 cores · 4.0 GiB · 10.0 GiB disk — applies on next restart
cli
$ ironwire resize web --cpu=4 --mem=4G resized web to 4 cores · 4.0 GiB · 10.0 GiB disk — applies on next restart
requires orchestration mode on the machine you run it from.
dashboard
select the machine and press z, or use the Space actions popup.
pass at least one of --cpu/--mem/--disk; omitted values keep their current setting. the new size applies on the next restart; until then the machine keeps its old size. disk only grows, never shrinks.
deleting
ssh
$ ssh dashboard@ironwire.sh rm web deleted web
dashboard
select the machine, press x, then y to confirm, or use the Space actions popup.
deletion is permanent: the disk is gone. to guard important machines, turn on delete protection in the dashboard: select the machine, press g (or toggle it in the Space actions popup). a protected machine cannot be deleted by anyone, not even you, until you toggle protection off:
$ ssh dashboard@ironwire.sh rm web machine "web" is delete-protected; turn protection off first
inspecting: info and stats
info shows status, IP, size, restart policy, URLs, SSH endpoint, protection and orchestration switches, and published ports.
ssh
$ ssh dashboard@ironwire.sh info web web status: running ip: 10.0.0.2 size: 2 cores · 2 GiB · 5 GiB disk policy: on-failure url: https://web.alice.ironwire.xyz ssh: web@ironwire.sh orchestrate: off protected: on internal: 10.0.0.2 — reachable by your other machines on any port; not reachable from the internet public: https://web.alice.ironwire.xyz → the guest's web app on port 8000 system: 3f0c9a71d2b4
cli
$ ironwire info web web status: running ip: 10.0.0.2 size: 2 cores · 2 GiB · 5 GiB disk policy: on-failure url: https://web.alice.ironwire.xyz ssh: web@ironwire.sh orchestrate: off protected: on internal: 10.0.0.2 — reachable by your other machines on any port; not reachable from the internet public: https://web.alice.ironwire.xyz → the guest's web app on port 8000 system: 3f0c9a71d2b4
dashboard
the machine list itself shows state, IP, uptime, CPU/memory/disk, drive, SSH endpoint, and URL; the protection and orchestration switches appear as checkboxes in the Space actions popup.
stats shows current CPU, memory, and disk usage plus history. ranges: 1h (default), 24h, 7d, 30d.
ssh
$ ssh dashboard@ironwire.sh stats web --range=24h now (14:32:05) cpu: 3.2% mem: 412M / 2.0G disk: 1.8G / 5.0G range 24h · 144 points time cpu% cpu-max% mem-used disk-used 08-01 14:40:00 2.9 11.4 404M 1.8G 08-01 14:50:00 3.1 9.7 409M 1.8G …
cli
$ ironwire stats web --range=24h now (14:32:05) cpu: 3.2% mem: 412M / 2.0G disk: 1.8G / 5.0G range 24h · 144 points time cpu% cpu-max% mem-used disk-used 08-01 14:40:00 2.9 11.4 404M 1.8G 08-01 14:50:00 3.1 9.7 409M 1.8G …
dashboard
select the machine and press t for the stats popup; ←/→ switches the range.