{"id":35240270,"url":"https://github.com/welllog/etcdkeeper-v3","last_synced_at":"2026-04-08T13:31:13.105Z","repository":{"id":288527830,"uuid":"856660421","full_name":"welllog/etcdkeeper-v3","owner":"welllog","description":"Web UI client for etcd v3 | etcd v3 的 Web UI 客户端","archived":false,"fork":false,"pushed_at":"2025-06-20T08:19:15.000Z","size":11103,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-20T09:28:10.339Z","etag":null,"topics":["etcdkeeper","etcdv3","go","webui"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/welllog.png","metadata":{"files":{"readme":"README-CN.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-09-13T01:03:17.000Z","updated_at":"2025-06-20T08:19:19.000Z","dependencies_parsed_at":"2025-04-18T16:18:53.186Z","dependency_job_id":"a694c895-5bfe-46b9-b272-b4f7cb367cb3","html_url":"https://github.com/welllog/etcdkeeper-v3","commit_stats":null,"previous_names":["welllog/etcdkeeper-v3"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/welllog/etcdkeeper-v3","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/welllog%2Fetcdkeeper-v3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/welllog%2Fetcdkeeper-v3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/welllog%2Fetcdkeeper-v3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/welllog%2Fetcdkeeper-v3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/welllog","download_url":"https://codeload.github.com/welllog/etcdkeeper-v3/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/welllog%2Fetcdkeeper-v3/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31558380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T10:21:54.569Z","status":"ssl_error","status_checked_at":"2026-04-08T10:21:38.171Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["etcdkeeper","etcdv3","go","webui"],"created_at":"2025-12-30T04:59:16.265Z","updated_at":"2026-04-08T13:31:13.089Z","avatar_url":"https://github.com/welllog.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cbr\u003e \u003ca href=\"README.md\"\u003eEnglish\u003c/a\u003e | 中文\n\u003c/p\u003e\n\n![image](logo/logo-horizontal.png)\n## ETCD Keeper-v3\n这是原始 etcdkeeper 项目的一个分支。原始项目可以在[这里](https://github.com/evildecay/etcdkeeper)找到。与原始版本相比，该项目进行了以下更改：\n* 移除了对 etcd v2 的支持，仅保留对 etcd v3 的支持。\n* 移除了首次登录必须是root用户的限制。\n* 修改了键列表的显示，新增非\"/\"前缀的键展示。\n* 增强了对 YAML 格式的支持，包括 YAML 正确性验证和格式化，支持yaml跟json互转。\n* 改进了 etcd 客户端的重用和回收机制，减少了 etcdkeeper 和 etcd 之间的连接数量。\n* 配置项通过配置文件进行管理，启动参数仅支持 `-c` 参数来指定配置文件路径。如果默认配置文件(./config.yaml)不存在，将使用默认配置。\n* 可以配置多个 etcd 地址，并且通过下拉框选择当前的 etcd 地址。也支持直接编辑 etcd 地址进行连接。\n* 可以查看etcd中key存在的历史版本，并进行对比。\n\n## 安装\n\n### 先决条件\n- Go 1.22 或更高版本\n- etcd v3\n\n### 从源码构建\n1. 克隆仓库：\n    ```sh\n    git clone https://github.com/welllog/etcdkeeper-v3.git\n    cd etcdkeeper-v3\n    ```\n\n2. 构建项目：\n    ```sh\n    go build -o etcdkeeper-v3\n    ```\n\n3. 运行项目：\n    ```sh\n    ./etcdkeeper-v3 [-c /somepath/config.yaml]\n    ```\n\n### Docker\n1. 克隆仓库：\n    ```sh\n    git clone https://github.com/welllog/etcdkeeper-v3.git\n    cd etcdkeeper-v3\n    ```\n2. 构建 Docker 镜像：\n    ```sh\n    docker build -t etcdkeeper-v3 .\n    ```\n3. 运行 Docker 容器：\n    ```sh\n    docker run -d -p 8010:8010 -v somepath:/cmd/etc etcdkeeper-v3\n    ```\n\n## 配置\n默认的配置文件是 `config.yaml`，可以使用 `-c` 参数指定配置文件路径。以下是一个示例配置文件：\n\n```yaml\n# etcdkeeper-v3 监听主机\nhost: 0.0.0.0\n# etcdkeeper-v3 监听端口\nport: 8010\n# 日志级别：debug, info, warn, error, fatal\nloglevel:\netcds:\n  # 第一个默认\n    # etcd 地址\n  - endpoints: 127.0.0.1:2379\n    # etcd 名称\n    name: default\n    # 键分隔符\n    separator: /\n    # tls 配置\n    tls:\n      enable: false\n      certFile:\n      keyFile:\n      trustedCAFile:\n  - endpoints: 127.0.0.1:23179\n    name: backup\n```\n\n## 截图\n![image](etcdkeeper-v3.webp)\n\n## 许可证\n该项目使用 MIT 许可证。详情请参阅 [LICENSE](LICENSE) 文件。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwelllog%2Fetcdkeeper-v3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwelllog%2Fetcdkeeper-v3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwelllog%2Fetcdkeeper-v3/lists"}