0

配置远程连接 fnOS Docker 的方法

发表于:2024-10-2 18:37:48 Docker 907
本帖最后由 iCan 于 2024-10-2 18:40 编辑

很多时候,我们还是比较喜欢用命令行访问 Docker 的。
有些时候,我们也喜欢远程连接 Docker 后台。

Step 1:生成 SSH 证书
根据不同的系统和工具,有不同的生成方法,可以搜索“ssh-keygen生成密钥”来看具体操作方法

Step 2:为 fnOS 启用证书访问 SSH 的能力
用 SSH 登录 fnOS(假设用户名是 admin),将前述生成的公钥文件(一般是 xxx.pub)复制到 ~/.ssh 下,并重命名为 authorized_keys。
如果未找到 ~/.ssh 目录,则可以手动创建一个。

Step 3:配置本地通过证书直连 fnOS
在本地计算机中,将步骤 1 生成的私钥文件(一般是 xxx,比公钥少一个 .pub 扩展名)复制到 ~/.ssh 下,并修改权限为仅当前用户可用,如:
  1. chmod 600 ~/.ssh/xxx
复制代码
再创建或修改 ~/.ssh/config 文件,添加以下内容:
  1. Host fnos
  2.     HostName                192.168.x.x
  3.     User                        admin
  4.     IdentityFile               ~/.ssh/xxx
复制代码
完成之后,可以用 `ssh fnos` 进行验证。如果配置成功,则可以无需密码,直接进入 fnOS 的命令行。

Step 4:为 admin 启用 Docker 访问权限
默认情况下,Docker 在命令行中只允许 root 用户访问。我们可以直接将 admin 用户加入 docker 用户组来启用相关操作权限。
先 SSH 登录 fnOS,再执行以下命令:
  1. sudo usermod -aG docker admin
复制代码
完成之后,可以用 `docker ps` 进行验证。如果未见错误,则表示成功。

Step 5:为本地 Docker 客户端配置远端服务器
Docker 使用 context 来管理和维护客户端所访问的远端服务器,可以执行以下命令来创建一个 context:
  1. docker context create fnos --docker "host=ssh://fnos"
复制代码
完成之后,可以用 `docker -c fnos ps` 进行验证。如果未见错误,则表示成功。
如果希望默认都使用 fnOS 上的 Docker,可以执行 `docker context use fnos`。也可以执行 `docker context use default` 来切回默认上下文。

=====

上面的都完成之后,我们就可以开心玩了
  1. docker run --rm -it ollama/ollama ollama run llama3.2:1b
复制代码




收藏
送赞
分享

发表回复

评论列表(1)

iCan 楼主
前面 fnOS 里配置 SSH 证书比较麻烦,还是希望官方能够直接提供 Web 配置界面的。
https://club.fnnas.com/forum.php?mod=viewthread&tid=1988
2024-10-2 18:41:48 回复