更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux教程 > Linux上安装和使用OneDev:带有Kanban和CI/CD的Git服务器

Linux上安装和使用OneDev:带有Kanban和CI/CD的Git服务器

更新时间:2023-04-25 09:21:11浏览次数:495+次

本文介绍在Linux系统上安装和使用OneDev的方法,它是一款带有Kanban和CI/CD的自托管Git服务器。要用好OneDev其浏览器要求为Microsoft Edge、Safari 7.0、Chrome 40.0、Firefox 40.0或更高版本、同时要有至少2G的物理内存。

在Linux上安装OneDev的方法

1、在您的系统上安装OneDev

有很多方法可以安装和运行OneDev,比如作为Docker容器运行、部署到Kubernetes、在裸机/虚拟机上运行。

在本指南中,我们将学习如何在裸机/虚拟机和Docker容器上安装OneDev。

选项1、在裸机/虚拟机上运行OneDev

这种方法非常复杂,因为需要几个依赖包。首先,确保安装了Java 11或更高版本,可参考在Ubuntu 22.04系统上安装Java 11的三种方法,阅读地址在https://www.hmxthome.com/linux/4917.html。还要Git 2.11.1或更高版本。同时,还需要安装cURL。这可以使用以下命令来完成:

1]、Debian/Ubuntu

sudo apt update && sudo apt install curl git -y

2]、Rhel/Rocky Linux/Alma Linux

sudo yum install curl git -y

3]、Arch Linux

sudo pacman -S git

在Arch Linux上,您需要安装所需的字体:

sudo pacman -S fontconfig ttf-dejavu

一旦安装了所需的软件包,请获取最新的OneDev版本,地址在https://code.onedev.io/。或者,您也可以选择所需的版本,例如8.0.13版本:

mkdir onedev && cd onedev

wget https://code.onedev.io/~downloads/projects/160/builds/3540/artifacts/onedev-8.0.15.tar.gz

现在提取存档:

tar -xvf onedev-*.tar.gz

现在导航到目录:

cd onedev-*/

现在安装该服务。首先,编辑conf\wraper.conf,如果系统路径中不存在wrapper.java.command,则将其值设置为java命令的路径。例如,在我的案例中,Java位于/opt/jdk-18/:

$ vim conf/wrapper.conf

wrapper.java.command=/opt/jdk-18/bin/java

一旦进行了更改,请运行以下命令安装服务:

sudo bin/server.sh install

注:以上命令Linux和MacOS通用。如果是在Windows上(来自具有管理员权限的同一文件夹),则运行server.bat install。

将创建OneDev的系统服务。启动并启用服务:

sudo systemctl enable --now onedev

检查服务的状态:

$ systemctl status onedev

onedev.service - OneDev

Loaded: loaded (/etc/systemd/system/onedev.service; enabled; vendor preset: enabled)

Active: active

选项2、将OneDev作为Docker容器运行

这个选项最适合那些希望在安装依赖项时避免复杂性的人。在这里,您所需要的只是安装并运行Docker引擎,可参考如何在Ubuntu 22.04系统上安装Docker CE一文,阅读地址在https://www.hmxthome.com/linux/4941.html。

安装后,将您的系统用户添加到docker组中。

sudo usermod -aG docker $USER

newgrp docker

现在为OneDev创建一个存储目录:

sudo mkdir /onedev

sudo chmod -R 777 /onedev

在基于Rhel的系统上,为要访问的路径配置SELinux:

sudo setenforce 0

sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

现在,您可以使用以下命令轻松地运行容器:

docker run -d \

  --name onedev \

  --restart always \

  -v /var/run/docker.sock:/var/run/docker.sock \

  -v /onedev:/opt/onedev \

  -p 6610:6610 \

  -p 6611:6611 \

  1dev/server

检查容器的状态:

$ docker ps

486341cf8a7f   1dev/server         "/root/bin/entrypoin…"   17 seconds ago   Up 14 seconds   0.0.0.0:6610-6611->6610-6611/tcp, :::6610-6611->6610-6611/tcp   onedev

访问OneDev Web UI

一旦安装了OneDev,您现在可以使用URL访问它,地址格式为http://domain_name:6610。首先,创建管理员用户:

\

设置网站的URL:

\

现在您已经准备好使用OneDev了:

\

使用OneDev:Git与Kanban和CI/CD一起使用

现在,我们将使用OneDev自托管Git服务器与Kanban和CI/CD。我们将从web UI创建一个测试项目开始:

\

一旦创建,我们将从终端创建一个react应用程序。首先,在继续操作之前,请在系统上安装Node.js 14或更高版本:

1]、RHEL/CentOS/Fedora

sudo yum install gcc-c++ make

curl --silent --location https://rpm.nodesource.com/setup_16.x | sudo bash -

sudo yum -y install nodejs

2]、Debian/Ubuntu

curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -

sudo apt install -y nodejs

现在创建应用程序:

npx create-react-app myapp

在此之后,您将在当前目录中创建我的应用程序的目录。要将此代码推送到OneDev,请导航到目录:

cd myapp

现在将代码推送到OneDev:

git remote add origin http://localhost:6610/myapp

git push origin master:master

样本输出:

\

现在,您应该按照web UI中所示的方式推送您的代码:

\

现在单击“adding onedev buildspec”以打开GUI并添加构建规范:

\

在这里,我们将使用默认模板。保存此规范并提交更改:

\

现在,您将在此处看到正在进行的CI构建:

\

要查看进度,请单击它:

\

一旦完成,您应该有一个如图所示的构建:

\

注:从上面介绍的OneDev使用方法来看,使用OneDev非常的简单,其他的实际例子可按上面的方法操作,用户可自行去尝试。