本帖最后由 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 下,并修改权限为仅当前用户可用,如:
再创建或修改 ~/.ssh/config 文件,添加以下内容:
- Host fnos
- HostName 192.168.x.x
- User admin
- IdentityFile ~/.ssh/xxx
复制代码 完成之后,可以用 `ssh fnos` 进行验证。如果配置成功,则可以无需密码,直接进入 fnOS 的命令行。
Step 4:为 admin 启用 Docker 访问权限
默认情况下,Docker 在命令行中只允许 root 用户访问。我们可以直接将 admin 用户加入 docker 用户组来启用相关操作权限。
先 SSH 登录 fnOS,再执行以下命令:
- sudo usermod -aG docker admin
复制代码 完成之后,可以用 `docker ps` 进行验证。如果未见错误,则表示成功。
Step 5:为本地 Docker 客户端配置远端服务器
Docker 使用 context 来管理和维护客户端所访问的远端服务器,可以执行以下命令来创建一个 context:
- docker context create fnos --docker "host=ssh://fnos"
复制代码 完成之后,可以用 `docker -c fnos ps` 进行验证。如果未见错误,则表示成功。
如果希望默认都使用 fnOS 上的 Docker,可以执行 `docker context use fnos`。也可以执行 `docker context use default` 来切回默认上下文。
=====
上面的都完成之后,我们就可以开心玩了
- docker run --rm -it ollama/ollama ollama run llama3.2:1b
复制代码
|