Young's Mind
Implementation

Prod decommission — opencode-web.service + tailscaled

Young, 2026-10-18: decommission opencode-web.service (sol.youngle.au, :4090) and tailscaled.

Prod decommission — opencode-web.service + tailscaled

Young, 2026-10-18: decommission opencode-web.service (sol.youngle.au, :4090) and tailscaled.

What was done

ItemBeforeAfterAction taken
opencode-web.serviceactive (user unit)stopped + disabledsystemctl --user stop + disable; unit file removed
Port 4090listening (opencode serve)closedprocess stopped
nginx sol configsretired .bak files in sites-availableremovedsudo rm all sol.youngle.au.bak-* and .retired-*
tailscaledinactive, not enabled, binary not installedalready goneno action needed — was already decommissioned
systemd daemon—reloadedsystemctl --user daemon-reload

What remains on prod

ServicePortStatePurpose
nginx80/443activereverse proxy + TLS
solos-docs.service8091activedocs.youngle.au (basic-auth)
pulse-site.service8092activepulse.youngle.au (public)
v3-heart-prod.service—active (4 days)SolOS V3 Heart worker
Docker daemon—installed (v29.7.2)for tenants (not yet used)

What was NOT done

  • I did not touch Docker, nginx config (only removed backup files), or any service other than opencode-web.
  • I did not remove the opencode binary from prod (it's still at /home/ubuntu/.opencode/bin/opencode — used by the Heart worker's PATH).
  • I did not touch tailscaled config (binary not installed, so nothing to clean).

Cost impact

$0 saved. Both services were already inactive. The decommission cleans up leftover config files and frees port 4090. No monthly cost change.

Copyright © 2026