本篇文章通過部署 Gitea,實現(xiàn)本地 Git 倉庫,真實體驗了“云服務器 Flexus X 實例”,深感其卓越性能與靈活性。這款實例以其六倍于常的強勁算力,搭配旗艦級的操作體驗,廣泛適用于高科技、零售、金融、游戲等眾多領域的通用工作負載需求。本文旨在詳細闡述如何高效利用“云服務器 Flexus X 實例”,包括如何在其中從零開始,通過安裝相關依賴、安裝 Docker、安裝 Gitea 等步驟,實現(xiàn)自己的 Git 倉庫,管理本地代碼。精彩內(nèi)容,不容錯過,快來一探究竟吧!
一、什么是 Gitea
Gitea 是一個輕量級的 DevOps 平臺軟件。從開發(fā)計劃到產(chǎn)品成型的整個軟件生命周期,他都能夠高效而輕松的幫助團隊和開發(fā)者。包括 Git 托管、代碼審查、團隊協(xié)作、軟件包注冊和 CI/CD。它與 GitHub、Bitbucket 和 GitLab 等比較類似。Gitea 最初是從 Gogs 分支而來,幾乎所有代碼都已更改。
通過在云服務器 Flexus X 實例 上部署,管理本地代碼。
下面就讓我們開始吧!
二、安裝Docker環(huán)境
2.1 更新 apt軟件源
首先,更新 apt 軟件源,執(zhí)行如下命令。
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 安裝依賴
然后,安裝需要的依賴,執(zhí)行如下命令。
root@flexusx-7305:~# sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
添加 Docker 的官方 GPG 密鑰,執(zhí)行如下命令。
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
然后,執(zhí)行命令安裝 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,執(zhí)行如下命令。
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 創(chuàng)建 docker-compose.yml
Gitea 在其 Docker Hub 組織內(nèi)提供自動更新的 Docker 鏡像??梢允冀K使用最新的穩(wěn)定標簽或使用其他服務來更新 Docker 鏡像。
首先,創(chuàng)建 docker-compose.yml 文件,內(nèi)容如下所示。
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 服務
執(zhí)行 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 登錄/注冊
登錄網(wǎng)址http://服務器 IP:3000/,Gitea 本地倉庫界面如下所示。
可以通過右上角的注冊按鈕注冊新的賬號,也可以通過 root 賬號登錄,如下所示。
Gitea 登錄后界面如下所示。
4.2 創(chuàng)建倉庫
點擊右上角+,然后點擊創(chuàng)建倉庫按鈕,進入配置倉庫參數(shù)界面,如下所示。
可以根據(jù)需要配置倉庫參數(shù),倉庫名稱必填,配置完成后點擊創(chuàng)建倉庫,配置界面如下所示。
創(chuàng)建倉庫成功,現(xiàn)在可以上傳代碼啦。
五、總結
在深度體驗了“Flexus 云服務器 X 實例”后,成功部署了 Gitea,擁有了自己的 Git 倉庫,實現(xiàn)了對本地代碼庫的無縫管理。這一過程不僅展現(xiàn)了 Flexus 云服務器 X 實例 的便捷與高效,更在于其流暢無卡頓的操作體驗,讓初學者也能輕松上手,日常管理變得前所未有的省心。對于追求高效代碼管理體驗的用戶來說,這無疑是一個值得立即嘗試的優(yōu)質選擇。趕緊來體驗 Flexus 云服務器 X 實例 帶來的卓越性能與便捷管理吧!
審核編輯 黃宇
-
Git
+關注
關注
0文章
201瀏覽量
15783 -
云服務器
+關注
關注
0文章
662瀏覽量
13380 -
華為云
+關注
關注
3文章
2605瀏覽量
17475
發(fā)布評論請先 登錄
相關推薦
評論