手把手教你玩转 Gitea|使用 Helm 在 K3s 上安装 Gitea

前言在前面的文章中,演示了如何用 Docker 镜像和 Windows 二进制包来安装运行 Gitea 。今天是玩转 Gitea 系列的使用 Helm 在 K3s 上安装 Gitea 。
关于 Gitea 的其他安装和使用方式,可以查看公众号文章:Gitea 安装配置系列教程 。
关于 K3sK3s 是 Rancher 发布的一款 Kubernetes 轻量级发行版,拥有完整特性的同时安装和使用也非常方便 。
K3s 的安装K3s 的安装有多种方式,详细内容可以查看K3s 中文文档 。本文搭建的 Kubernetes 运行环境如下:

  • 服务器:使用 K3s 安装脚本安装 Kubernetes 发行版环境
  • 管理员客户端:安装 kubectl 和 helm 命令行工具
使用如下命令安装 K3s# 方案一:会从 K8s 的 GitHub 仓库下载安装包$ curl -sfL https://get.k3s.io | sh -# 方案二:中国大陆用户,使用 Rancher 提供的阿里云 CDN 加速下载$ curl -sfL https://rancher-mirror.oss-cn-beijing.aliyuncs.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -# 以下是安装过程输出的信息[INFO]Finding release for channel stable[INFO]Using v1.24.6+k3s1 as release[INFO]Downloading hash rancher-mirror.oss-cn-beijing.aliyuncs.com/k3s/v1.24.6-k3s1/sha256sum-amd64.txt[INFO]Downloading binary rancher-mirror.oss-cn-beijing.aliyuncs.com/k3s/v1.24.6-k3s1/k3s[INFO]Verifying binary download[INFO]Installing k3s to /usr/local/bin/k3s[INFO]Skipping installation of SELinux RPM[INFO]Creating /usr/local/bin/kubectl symlink to k3s[INFO]Creating /usr/local/bin/crictl symlink to k3s[INFO]Skipping /usr/local/bin/ctr symlink to k3s, command exists in PATH at /usr/bin/ctr[INFO]Creating killall script /usr/local/bin/k3s-killall.sh[INFO]Creating uninstall script /usr/local/bin/k3s-uninstall.sh[INFO]env: Creating environment file /etc/systemd/system/k3s.service.env[INFO]systemd: Creating service file /etc/systemd/system/k3s.service[INFO]systemd: Enabling k3s unitCreated symlink /etc/systemd/system/multi-user.target.wants/k3s.service → /etc/systemd/system/k3s.service.[INFO]systemd: Starting k3s可以用 kubectl 来查看安装是否成功:
$ kubectl get nodesNAMESTATUSROLESAGEVERSIONdebianReadycontrol-plane,master5m42sv1.24.6+k3s1可以看到有一个单节点的 K3s 集群正在运行了 。接下来就用 K3s 来运行 Gitea 。
从外部访问 k3s1.获得访问集群所需的配置文件 /etc/rancher/k3s/k3s.yaml,将其复制到个人工作目录~/.kube/config,或者其他能够访问到集群网络的客户机 。
mkdir ~/.kubesudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/configsudo chown $USER ~/.kube/configsudo chmod 600 ~/.kube/config# 将 KUBECONFIG 添加到个人工作环境变量,便于 Helm、kubectl 读取echo "export KUBECONFIG=~/.kube/config" >> ~/.bashrc2.将配置文件 ~/.kube/config 中的 server: https://127.0.0.1:6443 更改为客户机可访问的服务器地址 。
安装 kubectl
阅读:安装 kubectl
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl安装 Helm
阅读:安装 Helm
  1. 下载 Helm https://github.com/helm/helm/releases
  2. 解压安装
tar -xvzf helm-*-linux-amd64.tar.gzsudo mv linux-amd64/helm /usr/local/bin/helm添加 Helm 仓库# 官方仓库 bitnamihelm repo add bitnami https://charts.bitnami.com/bitnami# Gitea 仓库helm repo add gitea https://dl.gitea.io/charts/使用 Helm 安装 Gitea前提条件在 K3s 上安装 Gitea 需要确保提前安装了 Helm,v2 或 v3 版本均可,但是建议用 v3,本文的 Helm 版本信息如下:
$ helm versionversion.BuildInfo{Version:"v3.10.0", GitCommit:"ce66412a723e4d89555dc67217607c6579ffcb21", GitTreeState:"clean", GoVersion:"go1.18.6"}

经验总结扩展阅读