Quick Reference

A one-page lookup of which port serves what, which components are required, and the CLI commands you'll use day-to-day. Bookmark this page — it's the one operators come back to most.

Components and Ports

Component Port Purpose Required
L2 Node 41720, 41721 P2P network, API Yes
IPFS 4001, 5001, 8081 Media storage No
Push Gateway 41722 Notifications No
Web Frontend Static files Browser access No
Reverse Proxy 80, 443 SSL, routing Production

Common Commands

The most-used CLI lines, gathered in one place so you don't have to grep through the tutorial. Pick the row that matches your install path.

Docker install

# Start / stop / restart the L2 node
docker start ogmara-l2
docker stop ogmara-l2
docker restart ogmara-l2

# Live log stream (Ctrl-C to detach)
docker logs -f ogmara-l2

# Last 100 lines (useful for "what just broke")
docker logs --tail 100 ogmara-l2

# Errors only since the last hour
docker logs --since 1h ogmara-l2 2>&1 | grep -i 'err\|warn'

# Inspect the bind-mounted config
ls -la /etc/ogmara/ogmara.toml
nano /etc/ogmara/ogmara.toml      # then `docker restart ogmara-l2`

# Pull a fresh image and re-create the container
docker pull ogmara/ogmara:l2-node-latest
docker rm -f ogmara-l2
# ... re-run the `docker run` from the Install — Docker page

Source / systemd install

# Start / stop / restart the L2 node
sudo systemctl start ogmara-node
sudo systemctl stop ogmara-node
sudo systemctl restart ogmara-node

# Service status (uptime, last few log lines, PID)
sudo systemctl status ogmara-node

# Live log stream
sudo journalctl -u ogmara-l2 -f

# Last 100 lines
sudo journalctl -u ogmara-l2 -n 100

# Errors only since the last hour
sudo journalctl -u ogmara-l2 -p err --since "1 hour ago"

# Edit the config and reload
sudo nano /etc/ogmara/ogmara.toml
sudo systemctl restart ogmara-node

# All Ogmara services in one window
sudo systemctl status ogmara-node ipfs ogmara-push-gateway

Node key backup and restore

Your node key IS your node's wallet address — lose it and any KLV on the address is gone. Export early, store offline, never share.

# --- Source / systemd ---
# Run as the ogmara user (owns the data dir) and pass the same config the
# service uses. Export uses a read-only DB open, so it works live.
sudo -u ogmara ogmara-node --config /etc/ogmara/ogmara.toml export-key -o /tmp/my-node-key.bak

# Restore on a new server or after a data wipe. Import needs an exclusive
# write lock, so stop the node first.
sudo systemctl stop ogmara-node
sudo -u ogmara ogmara-node --config /etc/ogmara/ogmara.toml import-key -i /tmp/my-node-key.bak
sudo systemctl start ogmara-node

# --- Docker ---
# Export via the running container (file lands in the bind-mounted /data).
docker exec ogmara-l2 ogmara-node --config /etc/ogmara/ogmara.toml export-key -o /data/node-key.bak
cp /var/lib/ogmara/data/node-key.bak ~/my-node-key.bak

# Restore. Import needs the RocksDB write lock, which the running node
# holds — so stop the container and import with a one-off container that
# mounts the same volume, then start the node again.
cp ~/my-node-key.bak /var/lib/ogmara/data/node-key.bak
docker stop ogmara-l2
docker run --rm \
  --user $(id -u):$(id -g) \
  -v /var/lib/ogmara/data:/data \
  -v /etc/ogmara:/etc/ogmara \
  ogmara/ogmara:l2-node-latest --config /etc/ogmara/ogmara.toml import-key -i /data/node-key.bak
docker start ogmara-l2

Health checks

# L2 node API
curl -s http://127.0.0.1:41721/api/v1/health

# IPFS
curl -s http://127.0.0.1:5001/api/v0/id | head -c 200

# Push gateway
curl -s http://127.0.0.1:41722/health

# Via reverse proxy (replace with your domain)
curl -s https://node.yourdomain.com/api/v1/health

Need more detail on any of these? The full walkthrough lives in Install — Docker / Install — Source / Configuration / Verify. For symptoms and fixes, see Troubleshooting.

← Back to Run a Node