133 lines
2.4 KiB
Markdown
133 lines
2.4 KiB
Markdown
|
> 本文作者:丁辉
|
|||
|
>
|
|||
|
|
|||
|
# Helm部署Gitea
|
|||
|
|
|||
|
## 介绍
|
|||
|
|
|||
|
**Gitea是一个轻量级的DevOps平台软件,支持Git托管、代码审查、团队协作、软件包注册和CI/CD等功能**。
|
|||
|
|
|||
|
## 开始部署
|
|||
|
|
|||
|
[Chart仓库](https://dl.gitea.com/charts/)
|
|||
|
|
|||
|
1. 添加 Helm 仓库
|
|||
|
|
|||
|
```bash
|
|||
|
helm repo add gitea https://dl.gitea.io/charts
|
|||
|
helm repo update
|
|||
|
```
|
|||
|
|
|||
|
2. 创建命名空间
|
|||
|
|
|||
|
```bash
|
|||
|
kubectl create namespace gitea
|
|||
|
```
|
|||
|
|
|||
|
3. 生成secret
|
|||
|
|
|||
|
```bash
|
|||
|
kubectl create secret generic gitea-secret \
|
|||
|
--from-literal=username=设定仓库账号 \
|
|||
|
--from-literal=password=设定仓库密码 \
|
|||
|
-n gitea
|
|||
|
```
|
|||
|
|
|||
|
4. 创建Nginx证书secret
|
|||
|
|
|||
|
> cert为.pem和.crt文件都可以
|
|||
|
|
|||
|
```bash
|
|||
|
kubectl create secret tls gitea-tls --key nginx.key --cert nginx.pem -n gitea
|
|||
|
```
|
|||
|
|
|||
|
5. 编写模版文件
|
|||
|
|
|||
|
```bash
|
|||
|
vi gitea-values.yaml
|
|||
|
```
|
|||
|
|
|||
|
内容如下
|
|||
|
|
|||
|
```yaml
|
|||
|
# 开启 ingress 对外访问
|
|||
|
ingress:
|
|||
|
enabled: true
|
|||
|
className: # 指定 ingress 控制器, 不指定则需要集群内存在默认的 ingress 控制器
|
|||
|
hosts:
|
|||
|
- host: # 域名
|
|||
|
paths:
|
|||
|
- path: /
|
|||
|
pathType: Prefix
|
|||
|
tls:
|
|||
|
- hosts:
|
|||
|
- # 域名
|
|||
|
secretName: gitea-tls
|
|||
|
|
|||
|
# 配置持久化存储
|
|||
|
global:
|
|||
|
storageClass: # 指定存储卷, 不指定则需要集群内存在默认的存储卷
|
|||
|
|
|||
|
# 配置 ssh 模式下对外访问端口
|
|||
|
service:
|
|||
|
ssh:
|
|||
|
type: NodePort
|
|||
|
port: 22
|
|||
|
nodePort: 30000
|
|||
|
|
|||
|
# 配置管理员账号和密码
|
|||
|
gitea:
|
|||
|
admin:
|
|||
|
existingSecret: gitea-secret
|
|||
|
email: "gitea@gitea.com" # 配置仓库默认用户邮箱
|
|||
|
|
|||
|
config:
|
|||
|
APP_NAME: "Gitea" # 配置 Gitea 默认主页面展示名称
|
|||
|
|
|||
|
server:
|
|||
|
SSH_DOMAIN: "gitea.com"
|
|||
|
DOMAIN: "gitea.com"
|
|||
|
SSH_LISTEN_PORT: "22"
|
|||
|
SSH_PORT: "30000"
|
|||
|
|
|||
|
# 关闭 redis 集群
|
|||
|
redis-cluster:
|
|||
|
enabled: false
|
|||
|
|
|||
|
# 关闭 postgresql 集群
|
|||
|
postgresql-ha:
|
|||
|
enabled: false
|
|||
|
|
|||
|
# 启用 postgresql
|
|||
|
postgresql:
|
|||
|
enabled: true
|
|||
|
```
|
|||
|
|
|||
|
6. 部署
|
|||
|
|
|||
|
```bash
|
|||
|
helm install gitea --namespace gitea -f gitea-values.yaml gitea/gitea
|
|||
|
```
|
|||
|
|
|||
|
## 卸载
|
|||
|
|
|||
|
1. 卸载 gitea
|
|||
|
|
|||
|
```bash
|
|||
|
helm uninstall gitea -n gitea
|
|||
|
```
|
|||
|
|
|||
|
2. 删除 secret
|
|||
|
|
|||
|
```bash
|
|||
|
kubectl delete secret gitea-tls gitea-secret -n gitea
|
|||
|
```
|
|||
|
|
|||
|
3. 删除命名空间
|
|||
|
|
|||
|
```bash
|
|||
|
kubectl delete namespace gitea
|
|||
|
```
|
|||
|
|
|||
|
|