Docker Notary 项目教程
notary项目地址:https://gitcode.com/gh_mirrors/notary1/notary
1. 项目的目录结构及介绍
Docker Notary 项目的目录结构如下:
notary/
├── cmd/
│ ├── notary/
│ └── notary-server/
├── contrib/
├── docs/
├── pkg/
│ ├── client/
│ ├── server/
│ └── trust/
├── scripts/
├── vendor/
├── Dockerfile
├── Gopkg.lock
├── Gopkg.toml
├── LICENSE
├── Makefile
└── README.md
目录结构介绍
cmd/
: 包含主要的可执行文件,如notary
和notary-server
。contrib/
: 包含一些贡献者的脚本和工具。docs/
: 包含项目的文档。pkg/
: 包含项目的核心包,如客户端 (client
)、服务器 (server
) 和信任管理 (trust
)。scripts/
: 包含一些辅助脚本。vendor/
: 包含项目的依赖库。Dockerfile
: 用于构建 Docker 镜像的文件。Gopkg.lock
和Gopkg.toml
: 用于管理项目依赖的文件。LICENSE
: 项目的许可证。Makefile
: 包含一些常用的构建命令。README.md
: 项目的介绍和使用说明。
2. 项目的启动文件介绍
在 cmd/
目录下,有两个主要的启动文件:
cmd/notary/main.go
: 这是 Notary 客户端的启动文件。它负责初始化客户端并执行用户命令。cmd/notary-server/main.go
: 这是 Notary 服务器的启动文件。它负责启动服务器并处理客户端请求。
启动文件介绍
-
cmd/notary/main.go
:- 导入必要的包。
- 解析命令行参数。
- 初始化客户端配置。
- 执行用户命令。
-
cmd/notary-server/main.go
:- 导入必要的包。
- 解析命令行参数。
- 初始化服务器配置。
- 启动服务器并监听请求。
3. 项目的配置文件介绍
Notary 项目的配置文件主要位于 cmd/notary-server/
和 cmd/notary/
目录下。
配置文件介绍
-
cmd/notary-server/config.json
:- 包含服务器的配置信息,如数据库连接、TLS 配置、存储配置等。
- 示例配置:
{ "server": { "http_addr": ":4443", "tls_key": "path/to/key.pem", "tls_cert": "path/to/cert.pem" }, "storage": { "backend": "mysql", "db_url": "user:password@tcp(localhost:3306)/notary" } }
-
cmd/notary/config.json
:- 包含客户端的配置信息,如信任存储位置、远程服务器地址等。
- 示例配置:
{ "trust_dir": "path/to/trust/dir", "remote_server": { "url": "https://notary-server:4443" } }
通过这些配置文件,可以灵活地配置 Notary 客户端和服务器的行为。