Skip to main content
SSH access lets you connect directly to a running container in your deployment, which is useful for debugging, inspecting logs, or running ad-hoc commands without rebuilding and redeploying. SSH Access Toggle SSH Access on during deployment creation to configure it. Up to 5 users per deployment are supported.

SSH Runtime

The SSH Runtime dropdown controls how SSH is served:
  • Sidecar: Simplismart injects a sidecar container that handles SSH. Use this if your image does not already include an SSH server. No changes to your Dockerfile are required.
  • Main Container: SSH runs inside your primary container. Use this when you are bringing your own image that already has openssh-server installed and configured.

Users

Primary User is created automatically. The username is derived from your deployment slug (e.g. <YOUR-ORG-NAME>-<DEPLOYMENT-SLUG>) and gets Root access by default. Additional Users follow the format <YOUR-ORG-NAME>-<DEPLOYMENT-SLUG>-<SUFFIX> and are granted Limited access. You can add up to 4 additional users alongside the primary user. Each user is associated with an SSH Secret, a Kubernetes secret holding the authorized public key for that user.

Bringing Your Own Image with SSH

If you select Main Container as the runtime, your image must have openssh-server installed and sshd configured to start on launch. Below is a reference Dockerfile:
If your environment requires CUDA 12.x, replace the base image in the Dockerfile above with:
The rest of the Dockerfile remains unchanged.
Create an entrypoint.sh file in the same directory as your Dockerfile. This script initializes the SSH environment and starts the SSH daemon:
entrypoint.sh
Key requirements:
  • openssh-server must be installed, SSH will not work without it.
  • Password authentication is disabled; only public key auth is accepted.
  • Port 2222 must be exposed.
  • ssh-keygen -A generates the host keys at build time.
  • The CMD optionally runs a bootstrap script (passed via $SSH_BOOTSTRAP_SCRIPT) before starting sshd in the foreground.
The SSH Secret you configure in the Secrets tab must contain the public key that corresponds to the private key you will use when connecting.

Generate an SSH Key Pair

Before creating your deployment, generate a key pair:
This produces two files:
  • simplismart_key.pem: your private key. Keep this locally; never share it.
  • simplismart_key.pub: your public key. Add this to Simplismart as an SSH Public Key secret under Integrations → Secrets.
When configuring SSH Access in the deployment form, select that secret from the SSH Secret dropdown for each user.

Connecting to a Running Deployment

Once the deployment status shows deployed, open the deployment detail page. The SSH Access section shows the ready-to-use command pre-filled with your username and host: SSH into container Copy the command and point -i to your .pem private key file:
The panel also displays:
  • SSH User: Auto generated primary username tied to your deployment slug
  • Access Level: root for the primary user, limited for additional users
  • SSH Runtime: sidecar or main_container, as configured at creation