devfile/registry
GitHub: devfile/registry
托管公共社区 devfile 模板的 OCI 标准化仓库,为云原生开发工具提供开发环境定义的索引与分发服务。
Stars: 51 | Forks: 95
# registry
Devfile registry - 存储托管在 的公共社区、基于 OCI 的 devfile registry 的内容。
公共 registry 每周更新一次,时间为美国东部时间周三中午 12 点前,包含此仓库中所有已更新的 stack。
## Registry 状态

[](https://github.com/devfile/registry/actions/workflows/validate-stacks.yaml)
[][2]
## Registry 更新
Staging devfile registry 会在每次提交到本仓库的 main 分支时刷新。生产环境 则是手动提升,如上所述,通常在每周三按需进行。
如果您是 stack 的所有者,并且需要在周三之前紧急刷新 (例如 stack 损坏),请在 [devfile/api](https://github.com/devfile/api) 仓库中提交一个 issue,并说明以下内容:
- Stack 名称
- 为什么需要刷新
- 为什么刷新不能等到下一次定期刷新
- 在 issue 描述中包含 `/area registry`,以便添加 `area/registry` 标签。
## 开发
### 前置条件
- Docker 或 Podman
- Git
### 构建
要将此 devfile registry 构建为容器镜像,请运行 `bash .ci/build.sh`。将使用 [devfile registry build tools](https://github.com/devfile/registry-support/tree/master/build-tools) 构建容器镜像。默认情况下,这些脚本将使用 `docker` 并为 `linux/amd64` 架构进行构建。
要使用 `podman` 进行构建,首先运行:
```
export USE_PODMAN=true
```
要为 `linux/arm64` 进行构建,请运行:
```
bash .ci/build.sh linux/arm64
```
然后,将容器镜像推送到您选择的容器 registry,并使用 [devfile adopted devtool](https://devfile.io/docs/2.2.0/developing-with-devfiles#tools-that-provide-devfile-support) 或 [此处](https://github.com/devfile/registry-support#deploy) 列出的方法之一进行部署。
如果您在运行 `bash .ci/build_and_deploy.sh` 时,在使用搭载 Apple Silicon 芯片的 MacOS 时遇到错误,应首先运行 `export PLATFORM_EV=linux/arm64` 以正确设置容器配置。默认情况下,容器将为 `linux/amd64` 构建。
## Devfile 部署
### 前置条件
- Docker 或 Podman
- Git
- Kubernetes 或 Red Hat OpenShift
- odo v3.15.0+
### 部署
#### odo V3
以下命令可以使用 odo v3 构建并部署 devfile registry:
```
odo deploy --var indexImageName=quay.io//devfile-index --var indexImageTag=
```
**重要**:`odo deploy` 需要这些覆盖参数,以避免推送到默认的 `quay.io/devfile/devfile-index:next`。
可以通过覆盖 `hostName` 和 `hostAlias` 来设置部署主机名:
```
odo deploy --var hostName=devfile-registry. \
--var hostAlias=devfile-registry. \
--var indexImageName=quay.io//devfile-index \
--var indexImageTag=
```
**注意**:
- Kubernetes ingress 需要 `hostName`,OpenShift route 是可选的,默认为 `.`。
- `hostAlias` 设置 registry viewer 条目中静态链接的前导主机名,默认为我们的 staging 部署 `registry.stage.devfile.io`。
通过运行以下命令防止 odo v3 部署构建的镜像被推送:
```
# 设置 docker 指向 minikube 的 image registry
eval $(minikube docker-env)
ODO_PUSH_IMAGES=false odo deploy \
--var hostName=devfile-registry. \
--var hostAlias=devfile-registry. \
--var indexPullPolicy=Never
```
### 移除部署
#### odo V3
可以使用以下命令删除使用 odo v3 进行的部署:
```
odo delete component --name devfile-registry-community
```
## 贡献
有关向此 registry 贡献 Devfile stack,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。
## 遥测
Devfile Registry 配置了遥测功能,仅收集必要信息以提升我们的服务价值。有关更多详细信息,请参阅
[Telemetry Data Collection Notice](TELEMETRY.md)
## 治理
请参考 [GOVERNANCE.md](https://github.com/devfile/api/blob/main/GOVERNANCE.md) 获取更多信息。
## 安全
有关 devfile 组织安全策略的更多信息,请参阅 [此处](https://github.com/devfile/api/blob/main/SECURITY.md)。
## 用户
通过参考 [USERS.md](USERS.md) 可以找到使用此项目的用户列表。
## 会议
有关 Devfile 项目会议的信息,请参阅 [GOVERNANCE.md](https://github.com/devfile/api/blob/main/GOVERNANCE.md#meetings)
## Slack
在 Kubernetes Slack workspace 下有一个用于讨论的 Slack 频道,您可以在 [此处](https://kubernetes.slack.com/messages/devfile) 找到它
标签:Devfile, Devfile Registry, Docker, Git, Go, NIDS, Podman, Registry, Ruby工具, 威胁情报, 子域名突变, 安全防御评估, 容器化, 开发环境, 开发者工具, 开源框架, 技术栈定义, 持续集成, 日志审计, 注册表, 自动化构建, 请求拦截, 镜像仓库