Nella

Deploy dockerized projects to your own server. Three commands take a bare machine to a running app.

$ nella init

# nella.yml
servers:
  - 188.166.160.35

$ nella setup

Docker, the shared nella network, and a Caddy proxy on ports 80 and 443. Idempotent — nothing is left on the server.

Your project already has the rest.

# compose.yml
services:
  web:
    build: .
    networks: [nella]
    labels:
      caddy: app.example.com
      caddy.reverse_proxy: "{{upstreams 8080}}"

networks:
  nella:
    external: true

$ nella deploy

Built on the server, routed by the proxy, certificate issued on the first request.

Nothing on the server

No agent, no config files, no credentials. Nella drives ssh and docker from your machine.

Any Dockerfile

Go, Rust, PHP, Python, Node, or a folder of HTML. If it builds, it deploys.

No ports published

The proxy is the only container binding the host, so Docker never opens a hole past the firewall.