SSH 配置

Kamal 使用 SSH 连接你的主机上运行的命令。默认情况下它会尝试连接端口 22 上的 root 用户

如果你使用的是非 root 用户,则可能需要在将它们与 Kamal 一起使用之前手动引导你的服务器。在 Ubuntu 上,你会执行

sudo apt update
sudo apt upgrade -y
sudo apt install -y docker.io curl git
sudo usermod -a -G docker app

SSH 选项

这些选项在配置文件中的 ssh 键下指定。

ssh:

SSH 用户

默认为 root

  user: app

SSH 端口

默认为 22

  port: "2222"

代理主机

以以下形式指定@

  proxy: root@proxy-host

代理命令

自定义代理命令,旧版本 SSH 需要

  proxy_command: "ssh -W %h:%p user@proxy"

日志级别

默认为 fatal。如果你遇到 SSH 连接问题,请将其设置为 debug。

  log_level: debug

仅密钥

设置为 true 仅使用来自 keys 和 key_data 参数的私钥,即使 ssh-agent 提供更多标识。此选项适用于 ssh-agent 提供许多不同标识的情况,或者你需要覆盖所有标识并强制使用单一标识。

  keys_only: false

密钥

一个私钥文件名数组,用于公开密钥和基于主机的身份验证

  keys: [ "~/.ssh/id.pem" ]

密钥数据

一个字符串数组,其中数组的每个元素都是 PEM 格式的原始私钥。

  key_data: [ "-----BEGIN OPENSSH PRIVATE KEY-----" ]