专属
文档
插件
助手
邀请
顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像

交易
充值流量我的订单

文档

工具

功能
提交工单页面收录

帮助
轩辕镜像免费版

其他
关于我们网站地图
热门搜索:
docker-remote-api-tls

kekru/docker-remote-api-tls

kekru

用于转发Docker API套接字并需TLS客户端认证的Docker镜像

9 次收藏下载次数: 0状态:社区镜像维护者:kekru仓库类型:镜像最近更新:1 年前
让 AI 帮你使用轩辕镜像? · 展开查看说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

中文简介
标签列表
镜像标签列表与下载命令
轩辕镜像,不浪费每一次拉取。
点击查看

Docker Remote API TLS 认证代理镜像

镜像概述和主要用途

本镜像通过容器化方式提供带TLS客户端认证的Docker Remote API访问能力,客户端必须通过TLS证书进行身份验证。作为直接在Docker守护进程上配置TLS的替代方案,本镜像简化了安全暴露Docker Remote API的流程,适用于需要安全远程管理Docker主机的场景。

核心功能和特性

  • 强制TLS客户端认证:仅允许持有有效客户端证书的请求访问Docker Remote API
  • 双模式证书管理:支持使用外部CA证书或自动生成CA及证书链
  • 灵活的证书配置:可自定义证书有效期、服务器主机名等关键参数
  • 安全存储支持:可通过Docker Swarm Secrets管理证书密码,避免明文环境变量
  • 轻量级代理:基于Nginx实现,性能高效且资源占用低

使用场景和适用范围

  • 安全远程管理:需要通过网络远程访问Docker主机API的场景
  • 多主机Docker环境:跨主机管理Docker容器集群时的安全通信需求
  • 自动化部署流程:CI/CD管道中需要安全调用Docker API的场景
  • 第三方集成:允许可信服务通过API与Docker守护进程交互的场景
  • 测试环境快速搭建:需要临时暴露API但不愿修改Docker守护进程配置的场景

详细使用方法和配置说明

前提条件

  • Docker Engine 18.06+ 或 Docker Desktop
  • Docker Compose 1.25+(如需使用compose文件部署)
  • 本地文件系统路径(用于存储证书,需具备读写权限)

方式一:使用外部CA证书

准备工作

  1. 生成证书文件
    需准备CA根证书、服务器证书及私钥,可通过以下方式生成:

    • 参考Docker官方文档:保护Docker守护进程套接字
    • 使用脚本:https://github.com/kekru/linux-utils/blob/master/cert-generate/create-certs.sh%EF%BC%88%E8%AF%A6%E8%A7%81%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E%EF%BC%9Ahttps://gist.github.com/kekru/974e40bb1cd4b947a53cca5ba4b0bbe5#create-certificate-files%EF%BC%89
  2. 整理证书文件
    将以下文件放入本地目录(后续挂载到容器):

    ca-cert.pem      # CA根证书
    server-cert.pem  # 服务器证书
    server-key.pem   # 服务器私钥
    

    客户端需使用ca-cert.pem、cert.pem(客户端证书)和key.pem(客户端私钥)进行认证

部署配置

创建docker-compose.yml文件:

yaml
version: "3.4"
services:
  remote-api:
    image: kekru/docker-remote-api-tls:v0.4.0
    ports:
      - 2376:443  # 标准Docker TLS端口映射
    volumes:
      - <本地证书目录>:/data/certs:ro  # 只读挂载证书目录
      - /var/run/docker.sock:/var/run/docker.sock:ro  # 只读挂载Docker套接字

启动服务

bash
# 使用Docker Compose启动
docker-compose up -d

# 或使用Docker Swarm部署
docker stack deploy --compose-file=docker-compose.yml remoteapi

服务启动后,Docker Remote API将通过https://<主机IP>:2376暴露,客户端需使用cert.pem和key.pem进行认证。

方式二:自动生成CA及证书

准备工作

无需提前生成证书,镜像将自动创建CA根证书、服务器证书、客户端证书及私钥。需准备:

  • 本地空目录(用于存储生成的证书,需具备读写权限)
  • 证书密码(用于加密私钥)
  • 服务器主机名(将写入服务器证书的Subject Alternative Name字段)

部署配置

创建docker-compose.yml文件:

yaml
version: "3.4"
services:
  remote-api:
    image: kekru/docker-remote-api-tls:v0.4.0
    ports:
      - 2376:443
    environment:
      - CREATE_CERTS_WITH_PW=supersecret  # 证书加密密码(必填)
      - CERT_HOSTNAME=remote-api.example.com  # API访问主机名(必填)
      # 可选:自定义证书有效期
      # - CERT_EXPIRATION_DAYS=365  # 服务器/客户端证书有效期(默认365天)
      # - CA_EXPIRATION_DAYS=900    # CA根证书有效期(默认900天)
    volumes:
      - <本地证书目录>:/data/certs  # 读写挂载,用于存储生成的证书
      - /var/run/docker.sock:/var/run/docker.sock:ro

启动服务

bash
# 使用Docker Compose启动
docker-compose up -d

# 或使用Docker Swarm部署
docker stack deploy --compose-file=docker-compose.yml remoteapi

证书文件位置

生成的证书将存储在<本地证书目录>:

  • 服务器证书:ca-cert.pem、server-cert.pem、server-key.pem
  • 客户端证书:<本地证书目录>/client/ca.pem、cert.pem、key.pem

环境变量说明

环境变量名描述默认值优先级
CREATE_CERTS_WITH_PW证书加密密码(自动生成证书时必填)无低于CERTS_PASSWORD_FILE
CERTS_PASSWORD_FILE存储证书密码的Docker Secret文件路径(绝对路径)无高于CREATE_CERTS_WITH_PW
CERT_HOSTNAME服务器证书中的主机名(自动生成证书时必填,支持逗号分隔多个主机/IP)无-
CERT_EXPIRATION_DAYS服务器和客户端证书的有效期(天)365-
CA_EXPIRATION_DAYSCA根证书的有效期(天)900-

客户端配置指南

获取客户端证书

  • 外部CA模式:客户端证书需自行准备(ca-cert.pem、cert.pem、key.pem)
  • 自动生成模式:客户端证书位于<本地证书目录>/client/

配置Docker客户端

通过环境变量指定证书路径和API地址:

bash
export DOCKER_HOST=tcp://remote-api.example.com:2376
export DOCKER_TLS_VERIFY=1
export DOCKER_CERT_PATH=<客户端证书目录>  # 包含ca.pem、cert.pem、key.pem的目录

测试连接:

bash
docker ps  # 应返回远程主机上的容器列表

使用dockerRemote脚本

项目提供dockerRemote脚本简化客户端访问:

  1. 下载脚本:wget https://raw.githubusercontent.com/kekru/docker-remote-api-tls/master/dockerRemote
  2. 修改脚本中的DOCKER_HOST和DOCKER_CERT_PATH为实际值
  3. 执行命令:./dockerRemote ps

快速测试步骤

  1. 克隆仓库:

    bash
    git clone https://github.com/kekru/docker-remote-api-tls.git
    cd docker-remote-api-tls
    
  2. 启动服务(自动生成证书模式):

    bash
    # 修改docker-compose.yml中的CERT_HOSTNAME为本地IP或主机名
    docker-compose up -d
    
  3. 测试API访问:

    bash
    # 使用项目提供的dockerRemote脚本
    ./dockerRemote ps
    

变更日志

v0.4.0

  • 升级Nginx版本至1.20.2

v0.3.0

  • 升级Nginx版本
  • 新增证书有效期配置(CERT_EXPIRATION_DAYS和CA_EXPIRATION_DAYS)
  • 新增支持通过Docker Swarm Secrets存储证书密码(CERTS_PASSWORD_FILE)
  • 新增自动化测试

v0.2.0

  • 首个稳定版本
  • 感谢https://github.com/smiller171%E7%9A%84%E8%B4%A1%E7%8C%AE

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 docker-remote-api-tls 镜像标签

docker pull docker.xuanyuan.run/kekru/docker-remote-api-tls:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull kekru/docker-remote-api-tls:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

一键安装

一键安装 Docker

Linux Docker 一键安装

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

免费版与专业版区别

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
kekru/docker-remote-api-tls
教程轩辕镜像功能与使用教程
定价查看流量套餐与价格
热门查看热门 Docker 镜像推荐
博客Docker 镜像公告与技术博客
官方公众号:源码跳动|官方技术交流群:831623681
官方公众号:源码跳动|官方技术交流群:|问题咨询请:提交工单
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.

更多 docker-remote-api-tls 镜像推荐

docker/dockerfile logo

docker/dockerfile

Docker 官方工具与组件镜像
这些是官方提供的Dockerfile前端镜像,主要功能是支持通过BuildKit构建Dockerfile,作为构建流程中的关键前端工具,能够有效配合BuildKit提升Dockerfile的构建效率、安全性与灵活性,为开发者提供官方认可的标准化构建方案,适用于各类基于Docker的应用开发与部署场景,确保构建过程的稳定可靠及操作便捷性。
125 次收藏5亿+ 次下载
29 天前更新
docker/dockerfile-copy logo

docker/dockerfile-copy

Docker 官方工具与组件镜像
此Docker镜像已被弃用。
1 次收藏5000万+ 次下载
7 年前更新
docker/docker-model-backend-llamacpp logo

docker/docker-model-backend-llamacpp

Docker 官方工具与组件镜像
暂无描述
2 次收藏5000万+ 次下载
7 天前更新

查看更多 docker-remote-api-tls 相关镜像