Skip to content

Managing websites

MyPanel runs each website in an isolated Docker container. On deploy, the new version is built and health-checked before traffic switches — the old version is only stopped once the switch succeeds, so there’s no downtime. Every deploy is recorded so you can roll back when needed.

When creating a website, pick one of these sources:

TypeUse when
Git + NixpacksYou have source on Git — Nixpacks auto-detects the stack (Node, Python, Go, PHP, Ruby…) and builds, no Dockerfile needed
DockerfileThe repo has its own Dockerfile
Docker imageDeploy straight from an existing image (e.g. nginx, an internal image)
StaticA static site (HTML/CSS/JS, an SPA build)
Reverse proxyPoint a domain at an already-running service (internal port or another URL)
WordPressOne-click WordPress with MySQL — see the WordPress guide
  1. Go to Websites → Add website.
  2. Pick a source type (table above) and fill in:
    • Domain — e.g. shop.example.com (point the DNS A record to the server IP first).
    • Source — Git URL, image name, or upstream URL depending on type.
    • Environment variables, CPU/RAM limits (optional).
  3. Click Create, then Deploy.

Click Deploy. The pipeline: fetch source / pull image → build → start new container → health check → switch the reverse proxy to the new version → stop the old container. If the health check fails, the old version keeps serving.

Need the previous version? Open the website → Rollback to re-run the most recent build.

  • Logs — view container logs directly in the panel.
  • Stats — container CPU/RAM in real time.
  • Start / Stop / Restart — control the container.
  • Env vars & resource limits — edit then redeploy to apply.
  • Analytics — requests, top pages… see the analytics guide.

If the domain already points to the server, MyPanel issues SSL automatically right after creation. Issue manually or troubleshoot on the website’s SSL tab — see the SSL guide.