当前位置: 首页 > article >正文

828华为云征文 | 云服务器Flexus X实例:部署 Gitea,拥有自己的Git仓库,管理本地代码

目录

一、什么是 Gitea

二、安装 Docker 环境

2.1 更新 apt 软件源

2.2 安装依赖

2.3 安装 Docker 

三、安装 Gitea

3.1 创建 docker-compose.yml

3.2 启动 Gitea 服务

3.3 初始化配置

四、运行 Gitea

4.1 登录/注册

4.2 创建仓库

五、总结


本篇文章通过部署 Gitea,实现本地 Git 仓库,真实体验了 “云服务器Flexus X实例”,深感其卓越性能与灵活性。这款实例以其六倍于常的强劲算力,搭配旗舰级的操作体验,广泛适用于高科技、零售、金融、游戏等众多领域的通用工作负载需求。本文旨在详细阐述如何高效利用“云服务器Flexus X实例”,包括如何在其中从零开始,通过安装相关依赖、安装Docker、安装 Gitea等步骤,实现自己的 Git 仓库,管理本地代码。精彩内容,不容错过,快来一探究竟吧!

一、什么是 Gitea

Gitea 是一个轻量级的 DevOps 平台软件。从开发计划到产品成型的整个软件生命周期,他都能够高效而轻松的帮助团队和开发者。包括 Git 托管、代码审查、团队协作、软件包注册和 CI/CD。它与 GitHub、Bitbucket 和 GitLab 等比较类似。 Gitea 最初是从 Gogs 分支而来,几乎所有代码都已更改。

通过在 云服务器Flexus X实例 上部署,管理本地代码。

下面就让我们开始吧! 

二、安装 Docker 环境

2.1 更新 apt 软件源

首先,更新 apt 软件源,执行如下命令。

root@flexusx-7305:~# sudo apt update
Hit:1 http://repo.huaweicloud.com/ubuntu focal InRelease
Get:2 http://repo.huaweicloud.com/ubuntu focal-updates InRelease [128 kB]
Hit:3 http://repo.huaweicloud.com/ubuntu focal-backports InRelease
Hit:4 http://repo.huaweicloud.com/ubuntu focal-security InRelease
Get:5 http://repo.huaweicloud.com/ubuntu focal-updates/main amd64 Packages [3,563 kB]
Get:6 http://repo.huaweicloud.com/ubuntu focal-updates/universe amd64 Packages [1,231 kB]
Get:7 http://repo.huaweicloud.com/ubuntu focal-updates/universe i386 Packages [807 kB]
Hit:8 https://packages.redis.io/deb focal InRelease        
Fetched 5,729 kB in 2s (2,559 kB/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
35 packages can be upgraded. Run 'apt list --upgradable' to see them.
root@flexusx-7305:~#

2.2 安装依赖

然后,安装需要的依赖,执行如下命令。

root@flexusx-7305:~# sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common

添加 Docker 的官方 GPG 密钥,执行如下命令。

root@flexusx-7305:~# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
OK
root@flexusx-7305:~#

添加 apt-get 源,如下所示。

root@flexusx-7305:~# sudo add-apt-repository \
> "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
> $(lsb_release -cs) \
> stable"
Hit:1 http://repo.huaweicloud.com/ubuntu focal InRelease
Hit:2 http://repo.huaweicloud.com/ubuntu focal-updates InRelease
Hit:3 http://repo.huaweicloud.com/ubuntu focal-backports InRelease
Hit:4 http://repo.huaweicloud.com/ubuntu focal-security InRelease
Get:5 https://download.docker.com/linux/ubuntu focal InRelease [57.7 kB]
Get:6 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages [50.2 kB]
Hit:7 https://packages.redis.io/deb focal InRelease                         
Fetched 108 kB in 2s (56.5 kB/s)
Reading package lists... Done
root@flexusx-7305:~#

2.3 安装 Docker 

然后,执行命令安装 docker,如下所示。

root@flexusx-7305:~# sudo apt install docker-ce

 查看 docker 版本。

root@flexusx-7305:~# docker --version
Docker version 27.2.1, build 9e34c9b
root@flexusx-7305:~#

最后,安装 docker-compose,执行如下命令。 

root@flexusx-7305:~# sudo apt install docker-compose
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  redis-server redis-tools
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  python3-cached-property python3-docker python3-dockerpty python3-docopt python3-importlib-metadata python3-jsonschema python3-more-itertools python3-pyrsistent python3-texttable python3-websocket python3-zipp
Suggested packages:
  python-jsonschema-doc
Recommended packages:
  docker.io
The following NEW packages will be installed:
  docker-compose python3-cached-property python3-docker python3-dockerpty python3-docopt python3-importlib-metadata python3-jsonschema python3-more-itertools python3-pyrsistent python3-texttable python3-websocket python3-zipp
0 upgraded, 12 newly installed, 0 to remove and 33 not upgraded.
Need to get 412 kB of archives.
After this operation, 2,414 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://repo.huaweicloud.com/ubuntu focal/universe amd64 python3-cached-property all 1.5.1-4 [10.9 kB]
Get:2 http://repo.huaweicloud.com/ubuntu focal/universe amd64 python3-websocket all 0.53.0-2ubuntu1 [

到这里 Docker 安装完成。 

三、安装 Gitea

3.1 创建 docker-compose.yml

Gitea 在其 Docker Hub 组织内提供自动更新的 Docker 镜像。可以始终使用最新的稳定标签或使用其他服务来更新 Docker 镜像。

首先,创建 docker-compose.yml 文件,内容如下所示。

version: "3"
  
networks:
  gitea:
    external: false

services:
  server:
    image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gitea/gitea:1.22.1
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=mysql
      - GITEA__database__HOST=db:3306
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3000:3000"
      - "222:22"
    depends_on:
      - db

  db:
    image: daocloud.io/library/mysql:8
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks:
      - gitea
    volumes:
      - ./mysql:/var/lib/mysql

3.2 启动 Gitea 服务

执行 docker 命令启动 Gitea 服务。

root@flexusx-7305:~# docker-compose up -d
Pulling db (daocloud.io/library/mysql:)...
latest: Pulling from library/mysql
45b42c59be33: Pull complete
b4f790bd91da: Pull complete
325ae51788e9: Pull complete
adcb9439d751: Pull complete
174c7fe16c78: Pull complete
698058ef136c: Pull complete
4690143a669e: Pull complete
f7599a246fd6: Pull complete
35a55bf0c196: Pull complete
790ac54f4c47: Pull complete
b0ddd5d1b543: Pull complete
1aefd67cb33d: Pull complete
Digest: sha256:03306a1f248727ec979f61424c5fb5150e2c5fd2436f2561c5259b1258d6063c
Status: Downloaded newer image for daocloud.io/library/mysql:latest
Pulling server (swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gitea/gitea:)...

如果拉取不下来镜像,可以通过如下方式拉取。

root@flexusx-7305:~# docker pull daocloud.io/library/mysql:8
root@flexusx-7305:~# docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gitea/gitea:1.22.1

查看运行的 docker 容器。

root@flexusx-7305:~# docker ps
CONTAINER ID   IMAGE                                                                   COMMAND                  CREATED              STATUS              PORTS                                                                              NAMES
ef512af0c1c5   swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gitea/gitea:1.22.1   "/usr/bin/entrypoint…"   About a minute ago   Up About a minute   0.0.0.0:3000->3000/tcp, :::3000->3000/tcp, 0.0.0.0:222->22/tcp, [::]:222->22/tcp   gitea
65fe1c102df6   daocloud.io/library/mysql:8                                             "docker-entrypoint.s…"   About a minute ago   Up About a minute   3306/tcp, 33060/tcp                                                                root_db_1
root@flexusx-7305:~#

3.3 初始化配置

访问 http://服务器IP:3000/,进入初始配置界面,如下所示。

填写配置信息,注意,最好设置下管理员账号,然后点击立即安装即可。

 

四、运行 Gitea

4.1 登录/注册

登录网址 http://服务器IP:3000/,Gitea 本地仓库界面如下所示。

可以通过右上角的注册按钮注册新的账号,也可以通过 root 账号登录,如下所示。

Gitea 登录后界面如下所示。 

4.2 创建仓库

点击右上角 +,然后点击创建仓库按钮,进入配置仓库参数界面,如下所示。

可以根据需要配置仓库参数,仓库名称必填,配置完成后点击创建仓库,配置界面如下所示。 

创建仓库成功,现在可以上传代码啦。 

 

五、总结

在深度体验了“Flexus云服务器X实例”后,成功部署了Gitea,拥有了自己的 Git 仓库,实现了对本地代码库的无缝管理。这一过程不仅展现了 Flexus云服务器X实例 的便捷与高效,更在于其流畅无卡顿的操作体验,让初学者也能轻松上手,日常管理变得前所未有的省心。对于追求高效代码管理体验的用户来说,这无疑是一个值得立即尝试的优质选择。赶紧来体验 Flexus云服务器X实例 带来的卓越性能与便捷管理吧!


http://www.kler.cn/a/305986.html

相关文章:

  • Cyberchef配合Wireshark提取并解析HTTP/TLS流量数据包中的文件
  • java八股-jvm入门-程序计数器,堆,元空间,虚拟机栈,本地方法栈,类加载器,双亲委派,类加载执行过程
  • Linux 函数在多个地方被同时调用时,函数中的变量如何管理,确保互不影响
  • 21. Drag-Drop拖放操作(二) - 文件、表格和树的拖放实现
  • 假期增设:福祉与负担并存,寻求生活经济平衡之道
  • Redis高可用-主从复制
  • 微服务之间的安全通信
  • Xorbits Inference(Xinference):一款性能强大且功能全面的大模型部署与分布式推理框架
  • TCP/IP网络模型分层
  • PCL 点云随机渲染颜色
  • 3285、找到稳定山的下标
  • 华为CNA VRM搭建(使用vmware worfstartion搭建)
  • 【Python】开发环境配置
  • Python的Scapy库详解
  • 关于 OceanBase 4.x 中被truncate的 table 不再支持进回收站的原因
  • 聚观早报 | 2025款比亚迪汉上市;iPhone 16天猫全球同步首发
  • GEO数据的下载和处理|GEO数据转换为Gene symbol|GEO注释文件提取symbol|查看样本标签|查看GEO数据疾病或正常|生物信息基础
  • 后端开发刷题 | 矩阵的最小路径和
  • 语言模型中的多模态链式推理(论文复现)
  • CSS—4
  • Go语言现代web开发defer 延迟执行
  • 【Linux 20】进程控制
  • 网络原理 IP协议与以太网协议
  • 匹配行最大值替换为最小值公式
  • 反射是一个新的AI模型,可以在一台性能良好的笔记本上运行并在测试中击败GPT-4o
  • matlab while (~feof(fid))语句解释