Servers

A Server is a machine Cloudgate reaches over SSH and deploys Services onto. Add any machine you control, run its setup once, and it is ready for Applications, databases and Compose stacks.

Applies to: Owner or AdminHosted and self-hosted

A Server can be a VPS, a dedicated machine or a box under your desk, as long as Cloudgate can reach it over SSH. On the Hosted instance you can also buy one from Cloudgate. On a self-hosted instance, the machine Cloudgate runs on is available as This Cloudgate host without adding it.

What you can do

  • Add a machine over SSH, as a deploy Server or a build Server.
  • Run its setup, which installs Docker, a Swarm and Traefik.
  • Check that Cloudgate can reach it, and see what is installed and what runs there.
  • Open a shell on it from the console, and see its CPU, memory, disk and network.
  • Turn on request logging and request metrics for its Traefik.
  • Remove it from Cloudgate.

Add a Server over SSH

  1. Make an SSH key

    Open Servers in the rail. If your Organization has no SSH key yet, press Manage SSH keys, then Generate one or Paste one I have. Copy its public line into the machine’s ~/.ssh/authorized_keys.

    cloudgate.octabyte.app/servers
    Every Server in the Organization, with its readiness.
  2. Add the Server

    Press Add a Server and fill in:

    • Name, such as fra-1, and an optional description.
    • Address: an IP address or a hostname.
    • SSH port and SSH user: root, or a user with passwordless sudo.
    • SSH key: the key from the previous step.
    • Role: Deploy, or Build for a Server that only builds images for other Servers.

    Press Add Server. Adding it records the machine; it does not connect to it yet.

    cloudgate.octabyte.app/servers
    Name, address, SSH port, user and the key Cloudgate signs in with.
  3. Check that Cloudgate can reach it

    On the Server’s Infrastructure tab, under Reaching this Server, press Check now. The readiness findings say what is missing; Read again refreshes them.

  4. Run the setup

    On the Setup card press Run setup, read the command that will run, and confirm. The setup:

    1. installs unzip, curl, wget, git, jq and openssl if any is missing (on Debian, Ubuntu or Raspbian; elsewhere this step is skipped);
    2. installs Docker;
    3. starts a Docker Swarm and creates the cloudgate-network network;
    4. creates /etc/cloudgate and starts Traefik on ports 80 and 443.
    cloudgate.octabyte.app/servers/…/infrastructure
    Each setup step shows its result; the log can be opened in the Dock.

When the setup is done, the Server is ready. Pick it as an Environment’s Deploy target or as the Server of a new Service; see Projects and Environments.

Check the Server’s host key

The first time Cloudgate connects, it records the Server’s SSH host key. The Access tab’s Host key card shows its SHA256 fingerprint; compare it with ssh-keygen -lf on the machine. If the machine later presents a different key, Cloudgate refuses to connect.

Work on the Server

  • Overview: readiness and what runs here.
  • Telemetry: CPU, memory, disk and network. Set up sampling on Monitoring.
  • Docker & Swarm: Swarm services, containers, the join command and nodes.
  • Access: the SSH key (Change the key) and the host key.
  • Terminal: Open a shell over SSH. Cloudgate records nothing you run there and undoes none of it.
  • Settings: name and connection (saving checks nothing; use Check now), Setup command, Prune Docker nightly, Request logging and Request metrics. Turning either of the last two on restarts Traefik on that Server.
cloudgate.octabyte.app/servers/…/telemetry
A Server's own charts, from the samples Cloudgate stores.

Remove a Server

On Settings, Remove this Server. Cloudgate forgets the machine and does nothing to it: the containers and data on it stay. Removal is refused while Services are recorded on the Server; delete them first.

What you cannot do

  • Move a Service from one Server to another.
  • Stop a setup run once it has started.
  • Build more than one Deployment at a time on a Server without an Enterprise license.
  • Remove a Server while Services are still recorded on it.

Questions

Which operating system does a Server need?

The setup installs its packages with apt-get, so use Ubuntu or Debian. On other systems that step is skipped and you install unzip, curl, wget, git, jq and openssl yourself.

Does Cloudgate need root?

It needs root, or a user with passwordless sudo, over SSH.

What happens to my machine if I remove the Server?

Nothing. Cloudgate forgets the machine and does nothing to it. Removal is refused while Services are still recorded on it.

Is it safe to run the setup again?

Yes. Every step checks before it acts, so Run setup again changes only what is missing.

Something missing or wrong on this page? Email support@octabyte.io, or start a free trial and try it in the console.