logo
0
1
WeChat Login

1ms-helper

毫秒镜像(1ms.run)助手工具 - 一键配置容器镜像加速

Go Version Platform

📋 项目简介

1ms-helper 是一个专为 毫秒镜像(1ms.run) 设计的命令行助手工具,旨在帮助开发者快速配置容器镜像加速服务。支持 Docker、Kubernetes(K8s)、K3s 等多种容器运行时的一键配置。

✨ 功能特性

  • 🚀 一键配置 - 快速配置毫秒镜像加速服务
  • 🔐 账号管理 - 安全管理毫秒镜像账号和认证信息
  • 🌐 多仓库支持 - 支持 Docker Hub、GitHub Container Registry、Google Container Registry 等多个镜像仓库
  • 🖥️ 跨平台兼容 - 支持 Linux、macOS、Windows 和群晖 NAS 系统
  • 🐋 多运行时支持 - 支持 Docker、Kubernetes(K8s)、K3s 容器运行时
  • 智能检测 - 自动检测系统环境并应用最适合的配置
  • 🛡️ 连接测试 - 提供连接状态检查和问题诊断功能

🎯 支持的镜像仓库

仓库名称原始地址加速地址状态
Docker Hubdocker.iodocker.1ms.run
GitHub Container Registryghcr.ioghcr.1ms.run
Google Container Registrygcr.iogcr.1ms.run
NVIDIA Container Registrynvcr.ionvcr.1ms.run
Red Hat Quayquay.ioquay.1ms.run
Elastic Docker Registrydocker.elastic.coelastic.1ms.run
Microsoft Container Registrymcr.microsoft.commcr.1ms.run
Kubernetes Container Registryregistry.k8s.iok8s.1ms.run

📦 安装方式

方式一:一键安装(推荐)

Linux/macOS:

curl -sSL https://static.1ms.run/1ms-helper/install.sh | bash # 或者使用 wget wget -qO- https://static.1ms.run/1ms-helper/install.sh | bash

Windows PowerShell:

# 以管理员身份运行 PowerShell irm https://static.1ms.run/1ms-helper/install.ps1 | iex # 或者下载后执行 Invoke-WebRequest -Uri https://static.1ms.run/1ms-helper/install.ps1 -OutFile install.ps1 .\install.ps1

Windows Git Bash:

curl -sSL https://static.1ms.run/1ms-helper/install.sh | bash

方式二:手动安装

  1. 访问 Releases 页面 下载对应系统的二进制文件
  2. 解压并移动到系统 PATH 目录:
# Linux/macOS 示例 tar -xzf 1ms-helper_Linux_x86_64.tar.gz sudo mv 1ms-helper /usr/local/bin/ chmod +x /usr/local/bin/1ms-helper

方式三:源码编译

# 克隆仓库 git clone https://cnb.cool/mliev/1ms.run/1ms-helper cd 1ms-helper # 安装依赖 go mod tidy # 编译 go build -o 1ms-helper main.go # 运行 ./1ms-helper

🚀 使用指南

基本命令

# 显示帮助信息 1ms-helper --help # 检查毫秒镜像连接状态 1ms-helper check # Docker 相关命令 1ms-helper config:docker # 一键配置 Docker(推荐) 1ms-helper config:docker:account # 配置 Docker 账号 1ms-helper config:docker:mirror # 配置 Docker 镜像加速 1ms-helper remove:docker:account # 移除 Docker 账号 1ms-helper remove:docker:mirror # 移除 Docker 镜像配置 # Kubernetes 相关命令 1ms-helper config:k8s # 配置 Kubernetes 集群镜像加速 # K3s 相关命令 1ms-helper config:k3s # 配置 K3s 集群镜像加速 # DNS 检查 1ms-helper dns:check # 检查和修复 Docker DNS 配置

详细使用步骤

Docker 用户

  1. 检查连接状态
1ms-helper check

检查与毫秒镜像的网络连接状态和配置是否正确。

  1. 一键配置(推荐)
1ms-helper config:docker

依次执行镜像配置和账号配置,适合首次使用的用户。

  1. 单独配置账号
1ms-helper config:docker:account

按提示输入您在 毫秒镜像 注册的账号进行设备认证。

  1. 单独配置镜像
1ms-helper config:docker:mirror

根据您的系统环境自动配置 Docker daemon 的镜像加速设置。

Kubernetes(K8s)用户

sudo 1ms-helper config:k8s

适用场景:

  • 使用 kubeadm 创建的标准 Kubernetes 集群
  • 需要配置镜像加速的 Control Plane 节点或 Worker 节点
  • 使用 Containerd 作为容器运行时的 K8s 集群

功能特性:

  • 自动检测 Kubernetes 集群和节点角色
  • 支持 Containerd 新版(>= 1.5)和旧版(< 1.5)配置
  • 优先配置 K8s 核心仓库(registry.k8s.io, k8s.gcr.io)
  • 可选择性配置其他云服务商镜像仓库
  • 智能重启服务(containerd 和 kubelet)

注意事项:

  • 需要 root 权限执行
  • 多节点集群需要在每个节点上分别运行
  • Control Plane 节点重启服务可能短暂影响集群调度
  • 建议在维护窗口执行

Containerd 用户

如果您直接使用 Containerd 作为容器运行时(非 Kubernetes 集群),可以根据您的场景选择:

  • 标准 K8s 集群: 使用 config:k8s
  • K3s 集群: 使用 config:k3s
  • 其他场景: Containerd 独立配置已整合到 K8s 配置中

K3s 用户

sudo 1ms-helper config:k3s

适用场景:

  • K3s 轻量级 Kubernetes 集群
  • 边缘计算场景
  • 资源受限环境

功能特性:

  • 自动检测 K3s 节点类型(Server/Agent)
  • 生成 /etc/rancher/k3s/registries.yaml 配置
  • 支持免费和付费镜像仓库
  • 自动重启 K3s 服务

详细说明请参考:K3S_CONFIGURATION.md

交互式配置(推荐)

1ms-helper config

交互式配置会自动检测您系统中安装的容器运行时,并提供相应的配置选项。适合不确定使用哪个命令的用户。

🔍 常见问题

Kubernetes vs K3s vs Docker

  • Docker: 适用于单机开发环境,使用 Docker Desktop 或 Docker Engine
  • Kubernetes (K8s): 适用于使用 kubeadm 创建的标准 Kubernetes 集群
  • K3s: 适用于轻量级 Kubernetes 场景,如边缘计算、IoT 设备等

如何选择命令?

  • 如果使用 Docker DesktopDocker Engine: 使用 config:docker
  • 如果使用 kubeadm 创建的 K8s 集群: 使用 config:k8s
  • 如果使用 K3s 集群: 使用 config:k3s
  • 如果不确定: 使用 config 进行交互式配置

📁 项目结构

1ms-helper/ ├── app/ # 应用核心代码 │ ├── Command/ # 命令实现 │ │ ├── Check.go # 连接检查命令 │ │ ├── Config.go # 一键配置命令 │ │ ├── ConfigAccount.go # 账号配置命令 │ │ ├── ConfigMirror.go # 镜像配置命令 │ │ ├── ConfigMirror/ # 镜像配置实现 │ │ │ ├── Linux.go # Linux系统配置 │ │ │ └── Synology.go # 群晖系统配置 │ │ ├── RemoveAccount.go # 账号移除命令 │ │ └── RemoveMirror/ # 镜像移除命令 │ ├── Dto/ # 数据传输对象 │ ├── Interfaces/ # 接口定义 │ ├── Lib/ # 公共库 │ │ ├── Ask.go # 用户交互 │ │ └── Question/ # 问题类型 │ └── Utils/ # 工具类 ├── cmd/ # 命令行入口 ├── config/ # 配置管理 ├── main.go # 程序入口 ├── go.mod # Go模块定义 ├── go.sum # 依赖校验 └── install.sh # 安装脚本

🔧 开发相关

开发环境要求

  • Go 1.23.4+
  • Git

主要依赖

本地开发

# 克隆项目 git clone https://cnb.cool/mliev/1ms.run/1ms-helper cd 1ms-helper # 安装依赖 go mod tidy # 运行项目 go run main.go # 运行测试 go test ./... # 构建二进制文件 go build -o bin/1ms-helper main.go

项目打包

# 使用 goreleaser 进行跨平台打包 goreleaser release --snapshot --clean

🤝 贡献指南

我们欢迎社区贡献!请遵循以下步骤:

  1. Fork 本仓库
  2. 创建您的特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开一个 Pull Request

📞 支持与反馈

🙏 致谢

感谢所有为本项目做出贡献的开发者和 毫秒镜像 团队提供的优质服务。


如果这个项目对您有帮助,请给我们一个 ⭐ Star!

Made with ❤️ by mliev

About

1ms-helper 是一个专为 毫秒镜像(1ms.run) 设计的命令行助手工具,旨在帮助开发者快速配置容器镜像加速服务。支持 Docker、Kubernetes(K8s)、K3s 等多种容器运行时的一键配置。

Language
Go96.1%
Shell1.3%
Makefile1.1%
Others1.5%