Gitea是一款轻量级代码托管解决方案,采用Go语言开发,具有资源消耗低、易于升级和支持多种数据库等特点。Bitnami Gitea镜像提供了一种简单、可靠的方式来部署和运行Gitea服务,适用于个人开发者、小型团队和企业内部使用。
Gitea***网站
商标说明:本软件列表由Bitnami打包。所提及的各个商标分别归各自公司所有,使用这些商标并不意味着任何关联或认可。
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/gitea
注意:如需在生产环境使用Gitea,建议尝试VMware Tanzu Application Catalog,即Bitnami目录的商业版本。
使用发布名称my-release安装Chart:
consolehelm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/gitea
注意:需要将占位符
REGISTRY_NAME和REPOSITORY_NAME替换为Helm Chart仓库和存储库的引用。例如,对于Bitnami,需使用REGISTRY_NAME=registry-1.docker.io和REPOSITORY_NAME=bitnamicharts。
此命令使用默认配置在Kubernetes集群上部署Gitea。可在安装过程中配置的参数详见参数部分。
提示:使用
helm list命令列出所有发布
以下是一个基本的Docker Compose配置示例:
yamlversion: '3' services: gitea: image: docker.io/bitnami/gitea:latest ports: - "3000:3000" - "22:22" environment: - GITEA_ADMIN_USERNAME=admin - GITEA_ADMIN_PASSWORD=your_password - GITEA_ADMIN_EMAIL=*** - GITEA_DATABASE_TYPE=postgres - GITEA_DATABASE_HOST=postgresql - GITEA_DATABASE_NAME=gitea - GITEA_DATABASE_USER=gitea - GITEA_DATABASE_PASSWORD=gitea_password volumes: - gitea_data:/bitnami/gitea depends_on: - postgresql postgresql: image: docker.io/bitnami/postgresql:14 environment: - POSTGRESQL_USERNAME=gitea - POSTGRESQL_PASSWORD=gitea_password - POSTGRESQL_DATABASE=gitea volumes: - postgresql_data:/bitnami/postgresql volumes: gitea_data: postgresql_data:
使用PostgreSQL数据库运行Gitea:
console# 首先启动PostgreSQL docker run -d \ --name postgresql \ -e POSTGRESQL_USERNAME=gitea \ -e POSTGRESQL_PASSWORD=gitea_password \ -e POSTGRESQL_DATABASE=gitea \ -v postgresql_data:/bitnami/postgresql \ docker.io/bitnami/postgresql:14 # 然后启动Gitea docker run -d \ --name gitea \ -p 3000:3000 \ -p 22:22 \ --link postgresql:postgresql \ -e GITEA_ADMIN_USERNAME=admin \ -e GITEA_ADMIN_PASSWORD=your_password \ -e GITEA_ADMIN_EMAIL=*** \ -e GITEA_DATABASE_TYPE=postgres \ -e GITEA_DATABASE_HOST=postgresql \ -e GITEA_DATABASE_NAME=gitea \ -e GITEA_DATABASE_USER=gitea \ -e GITEA_DATABASE_PASSWORD=gitea_password \ -v gitea_data:/bitnami/gitea \ docker.io/bitnami/gitea:latest
| 参数名 | 描述 | 默认值 |
|---|---|---|
global.imageRegistry | 全局Docker镜像仓库 | "" |
global.imagePullSecrets | 全局Docker仓库密钥名称数组 | [] |
global.defaultStorageClass | 持久卷的全局默认存储类 | "" |
global.storageClass | 已弃用:使用global.defaultStorageClass代替 | "" |
global.security.allowInsecureImages | 允许跳过镜像验证 | false |
global.compatibility.openshift.adaptSecurityContext | 调整部署的securityContext部分,使其与Openshift restricted-v2 SCC兼容 | auto |
| 参数名 | 描述 | 默认值 |
|---|---|---|
kubeVersion | 强制目标Kubernetes版本 | "" |
nameOverride | 部分覆盖gitea.fullname模板的字符串 | "" |
fullnameOverride | 完全覆盖gitea.fullname模板的字符串 | "" |
namespaceOverride | 完全覆盖common.names.namespace的字符串 | "" |
commonAnnotations | 添加到所有Gitea资源的通用注释 | {} |
commonLabels | 添加到所有Gitea资源的通用标签 | {} |
extraDeploy | 随发布一起部署的额外对象数组 | [] |
usePasswordFiles | 将凭据挂载为文件而不是使用环境变量 | true |
| 参数名 | 描述 | 默认值 |
|---|---|---|
image.registry | Gitea镜像仓库 | REGISTRY_NAME |
image.repository | Gitea镜像名称 | REPOSITORY_NAME/gitea |
image.digest | Gitea镜像摘要 | "" |
image.pullPolicy | Gitea镜像拉取策略 | IfNotPresent |
image.pullSecrets | 指定docker-registry密钥名称数组 | [] |
image.debug | 指定是否启用调试日志 | false |
adminUsername | 应用程序管理员用户名 | bn_user |
adminPassword | 应用程序管理员密码 | "" |
adminEmail | 管理员*** | *** |
appName | Gitea应用程序名称 | example |
runMode | Gitea运行模式 | prod |
exposeSSH | 是否使SSH服务器可访问 | true |
rootURL | UI根URL(用于链接生成) | "" |
command | 覆盖默认容器命令 | [] |
args | 覆盖默认容器参数 | [] |
updateStrategy.type | 更新策略 | RollingUpdate |
priorityClassName | Gitea pods的priorityClassName | "" |
schedulerName | k8s调度器名称(非默认) | "" |
topologySpreadConstraints | 用于pod分配的拓扑扩展约束 | [] |
automountServiceAccountToken | 在pod中挂载服务账户令牌 | false |
hostAliases | 添加部署主机别名 | [] |
extraEnvVars | 额外环境变量 | [] |
extraEnvVarsCM | 包含额外环境变量的ConfigMap | "" |
extraEnvVarsSecret | 包含额外环境变量的Secret | "" |
extraVolumes | 要添加到部署的额外卷数组 | [] |
extraVolumeMounts | 要添加到容器的额外卷挂载数组 | [] |
initContainers | 添加到pod的额外初始化容器 | [] |
pdb.create | 启用/禁用PodDisruptionBudget创建 | true |
pdb.minAvailable | 应保持调度的最小pod数量/百分比 | "" |
pdb.maxUnavailable | 可能不可用的最大pod数量/百分比 | "" |
sidecars | 附加到pod的额外容器 | [] |
tolerations | pod分配的容忍度 | [] |
Bitnami图表允许为图表部署内的所有容器设置资源请求和限制。这些设置位于resources值内(参见参数表)。设置请求对于生产工作负载至关重要,应根据具体用例进行调整。
为简化此过程,图表包含resourcesPreset值,可根据不同预设自动设置resources部分。但在生产工作负载中,不建议使用resourcesPreset,因为它可能无法完全适应您的特定需求。
Bitnami Gitea镜像将Gitea数据和配置存储在容器的/bitnami/gitea路径下。
持久卷声明用于跨部署保留数据。这在GCE、AWS和minikube上已测试可行。
consolehelm install my-release --set persistence.existingClaim=PVC_NAME oci://REGISTRY_NAME/REPOSITORY_NAME/gitea
指定的hostPath目录必须已存在(如果不存在,请创建一个)。
安装图表:
consolehelm install my-release --set persistence.hostPath=/PATH/TO/HOST/MOUNT oci://REGISTRY_NAME/REPOSITORY_NAME/gitea
由于容器无法控制主机的目录权限,您必须自己设置Gitea文件目录权限。
如果将image值配置为私有仓库中的镜像,您需要指定镜像拉取密钥:
yamlimagePullSecrets: - name: SECRET_NAME
Bitnami图表在首次启动时配置凭据。后续对密钥或凭据的任何更改都需要手动干预:
shellkubectl create secret generic SECRET_NAME --from-literal=admin-password=PASSWORD --from-literal=smtp-password=SMTP_PASSWORD --dry-run -o yaml | kubectl apply -f -
此图表允许使用affinity参数设置自定义亲和性。作为替代方案,您可以使用bitnami/common图表中提供的预设配置。
要在Kubernetes上备份和恢复Helm图表部署,您需要备份源部署的持久卷,并使用Velero(Kubernetes备份/恢复工具)将它们附加到新部署。
自2025年8月28日起,Bitnami将改进其公共目录,在新的Bitnami Secure Images计划下提供精选的强化、安全聚焦的镜像。作为此过渡的一部分:
完整README可在[***]
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429