Skip to content

Get started ​

This guide sets up one server and deploys one application. Complete the installation guide first to install all required tools:

  • Docker
  • SOPS
  • rsync

1. Connect DockIY to a server ​

bash
dockiy setup

The command will walk you through setting up your server, you will need an ssh connection string like user@56.213.224.182.

2. Set up DockIY services ​

bash
dockiy server init --sops "$SOPS_RECIPIENT"

Use the public recipient selected in SOPS identity setup. The command creates a server repository, encrypted secrets and dashboard logins, then deploys it to your server.

The initializer asks for an ACME email, hostnames, and login details for Umami, Dozzle, and Beszel. See Managing servers for the Compose stack, registry, and server update details.

3. Create an application ​

bash
dockiy app init

This asks for an application name, creates a repository with that directory name, and writes the name to dockiy.yml.

Available templates are react, vitepress, nuxt, and nuxt-betterauth. You can also pass a Git URL of your own.

Edit dockiy.yml. Set each deployment hostname (example.com and staging.example.com) and commit:

bash
git add .
git commit -m "feat: configure application"

4. Deploy the application ​

A template with one default environment needs an explicit version:

bash
dockiy app deploy --version v0.1.0

A template with staging and production environments uses these commands:

bash
dockiy app deploy staging
dockiy app deploy production --version v0.1.0

The first versioned deployment asks you to confirm v0.1.0. After the deploy, check the server record and running containers:

bash
dockiy app list
dockiy app status my-app default

For a staging or production app, replace default with that environment name. See Deploying applications for manifests, versions, retries, and rollbacks.

Released under the MIT License.