You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker TLS配置疑问及Windows客户端TLS连接步骤咨询

Docker TLS 配置相关问题解答

场景说明

我拥有一台安装了Docker的Linux服务器,日常通过Windows笔记本浏览器以「IP:容器端口」的方式访问容器。已按照官方指南获取了服务端与客户端的证书文件,为使Docker守护进程仅接受携带可信CA证书的客户端连接,需执行以下命令:

服务端启动命令

dockerd \
    --tlsverify \
    --tlscacert=ca.pem \
    --tlscert=server-cert.pem \
    --tlskey=server-key.pem \
    -H=0.0.0.0:2376

客户端测试命令

docker --tlsverify \
    --tlscacert=ca.pem \
    --tlscert=cert.pem \
    --tlskey=key.pem \
    -H=$HOST:2376 version

注意:Docker over TLS必须运行在TCP 2376端口。


疑问解答

1. 2376端口与容器端口不同是否会引发问题?

不会有任何问题,两者作用完全独立:

  • 2376是Docker守护进程的TLS管理端口,仅用于Docker客户端(如docker命令行工具)和服务端通信,执行容器创建、镜像拉取等管理操作;
  • 容器端口是业务服务的暴露端口,比如Web服务的80/443、数据库的3306等,用于外部访问容器内的应用。

只需确保:

  • Linux服务器防火墙开放2376端口给你的Windows客户端IP;
  • 容器端口的映射规则保持和之前一致即可。

2. Windows客户端如何配置TLS连接?

按以下步骤操作:

  1. 放置证书文件
    将客户端证书文件(ca.pem、cert.pem、key.pem)复制到Windows用户目录下的.docker文件夹,路径为:C:\Users\<你的用户名>\.docker,如果没有这个文件夹,手动创建即可。

  2. 配置环境变量(推荐方式)

    • 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」;
    • 在「用户变量」区域新增三个变量:
      • DOCKER_TLS_VERIFY=1:开启TLS验证
      • DOCKER_CERT_PATH=C:\Users\<你的用户名>\.docker:指定证书存放路径
      • DOCKER_HOST=tcp://<Linux服务器IP>:2376:指定Docker服务端地址
    • 保存后重启终端(PowerShell/CMD)使变量生效。
  3. 验证连接
    打开终端执行docker version,如果能正常返回服务端和客户端的版本信息,说明TLS连接配置成功。

    若不想配置环境变量,也可以每次执行命令时手动指定参数:

    docker --tlsverify `
        --tlscacert=C:\Users\<你的用户名>\.docker\ca.pem `
        --tlscert=C:\Users\<你的用户名>\.docker\cert.pem `
        --tlskey=C:\Users\<你的用户名>\.docker\key.pem `
        -H=<Linux服务器IP>:2376 version
    

内容的提问来源于stack exchange,提问作者mahdis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 07:07:31