Adding Stackmill to a server you already run¶
For a Linux server the customer maintains themselves. If the machine is dedicated to Stackmill, the server installation is simpler and takes care of the operating system too.
What is needed¶
- Ubuntu 22.04, Ubuntu 24.04 or Debian 12 on x86-64, with root access.
- TPM 2.0 (
/dev/tpmrm0). Without it the licence needs permanent internet and the machine can only simulate, never drive a real robot. - A physical machine. A virtual machine is refused: its security chip can be copied with it.
- Internet during the installation.
- The organisation id and registry token, on the portal's Server page.
Install¶
The portal shows the command, already filled in for the organisation:
To read it first, download install.sh and its checksum from the same page, check it, then run
it with the same options.
It installs Docker if the machine has none, downloads the Stackmill image, checks Apemill's signature on it, and starts the service. Running it twice changes nothing and never touches the data.
Useful options:
| Option | For |
|---|---|
--http-port 8080 |
when something already answers on port 80 |
--data-dir /srv/stackmill |
to put the data on another disk |
--bundle stackmill-server-<version>.tar |
a machine with no internet: download the bundle from the portal and copy it over |
--version 1.4.0 |
a specific version instead of the newest |
--uninstall |
remove Stackmill and keep the data |
Activate¶
Open http://<the server's address>, paste the server licence key in the licence panel and
confirm. Activation also stores the credential the machine needs for its updates, so nothing has
to be typed again.
Operate¶
stackmillctl status # version, licence, whether a cell is running
stackmillctl check # is there a newer version
sudo stackmillctl update # install it: refuses while a cell runs, rolls back if it fails
sudo stackmillctl rollback # go back to the previous version
stackmillctl logs
sudo stackmillctl backup # archive the data directory
The interface also has an Update now button, which runs exactly the same thing.
Without the installer¶
Stackmill runs from a plain docker compose on any Docker host: sign in to
docker.apemill.com with the organisation id and token, pin a version in the compose file, and
start it. There is then no stackmillctl, no Update now button and no remote support — the
update dialog prints the two commands to run instead. Ask Apemill for the compose file.
What to back up¶
Only the data directory, /opt/stackmill/data by default. It holds the projects, the licence
and the settings; everything else is reinstalled from the portal in minutes.
Restoring it onto a machine without a TPM needs the licence to be activated again: the licence server cannot tell a restored copy from a duplicated machine. With a TPM, restoring works as is.