Skip to main content
from gravixlayer import GravixLayer
from pathlib import Path
import os

client = GravixLayer()
runtime = client.runtime.create(template="python-3.12-base-small")

ssh = client.runtime.enable_ssh(runtime.runtime_id)

print(ssh.enabled)      # True
print(ssh.username)     # e.g. "user"
print(ssh.port)         # e.g. 22
print(ssh.connect_cmd)  # Full ssh command

# Save the private key locally
if ssh.private_key:
    key_path = Path.home() / f".gravixlayer-{runtime.runtime_id}.pem"
    key_path.write_text(ssh.private_key, encoding="utf-8")
    os.chmod(key_path, 0o600)

client.runtime.kill(runtime.runtime_id)

Parameters

ParameterTypeRequiredDescription
runtime_idstringYesRuntime identifier
regenerate_keysbooleanNoRegenerate SSH keys (default False)

Response

FieldTypeDescription
runtime_idstringRuntime identifier
enabledbooleanSSH enabled status
portintegerSSH port
usernamestringSSH username
connect_cmdstringFull SSH command
private_keystringPEM-encoded private key
public_keystringPublic key
ssh_configstringSSH config block
messagestringStatus message
Store private keys securely and set file permissions to 600.