ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Ubuntu搭建开发管理Git+SVN服务器(保姆级教程)

2021-12-14 23:02:13  阅读:252  来源: 互联网

标签:SVN svn Git run gitlab pid apache2 Ubuntu sudo


搭建过程趟了很多坑,记录下来,以飨读者。

目录

一、安装apache2

二、部署SVN服务器

三、搭建Gitlab服务器

四、Gitlab的使用


一、安装apache2

sudo apt-get install apache2-dev apache2

        如果安装过程中出现问题或者发现apache2无法重启的话,可以先卸载,之后重新进行一遍安装

        卸载Apache2方法

         (1)卸载apache2相关的包

sudo apt-get --purge remove apache2

       (2) 卸载apache2-开头的所有包。

sudo apt-get --purge remove apache2-*

       (3)找到没有删除掉的配置文件,一并删除

sudo find /etc -name “apache” |xargs rm -rf
sudo rm -rf /var/www

重启apache服务

sudo /etc/init.d/apache2 restart

安装完成进行测试

在浏览器中输入 localhost,如果显示默认界面即认为apache2可用

  

 

二、部署SVN服务器

(1)下载svn服务,以及 apache2-svn链接库并安装(适用于ubuntu18.04)

sudo apt-get install subversion libapache2-mod-svn

(2)建立自己的工作目录

sudo mkdir /home/svn #此目录为SVN的根目录

(3)建立版本库

sudo svnadmin create /home/svn/test #在根目录下建立版本库,名字可自由编制

(4)授予权限给svn及其子目录,可rw(读写)

sudo chmod -R 777 /home/svn

(5)添加subversion管理用户及subversion组

sudo adduser svnuser

sudo addgroup subversion

sudo addgroup svnuser subversion

(6)为apache用到的www-data添加权限,可以http访问 文件夹目录均使用根目录

sudo chown -R root:subversion /home/svn

sudo chown -R www-data:www-data /home/svn

(7)修改test/conf内的配置文件,打开文件夹

cd /home/svn/test/conf

(8)修改仓库配置文档

sudo vim svnserve.conf

(9)修改如下几行,去掉开头的#

anon-access = none 未授权不可读写

auth-access = write

password-db = passwd

authz-db = authz

(10)通过修改passwd文档来添加用户

sudo vim passwd

(11)添加用户

[users]

admin = admin321

账号 = 密码,注意等号左右要有空格

(12)通过修改authz文档来调整分组和权限

sudo vim authz

(13)添加用户分组以及权限

[groups] #用户组

Managers = admin #管理员组 成员:admin;组名 = 成员名

[svnroot:/] 仓库根目录权限 设置

@Managers = rw #managers用户组可读写

[test:/] 自定义版本库设置

@Managers = rw #managers 用户组可读写

(14)启动SVN服务器

sudo svnserver -d -r /home/svn #路径是根目录

(15)监听3690端口,检测是否启动成功

sudo netstat -antp | grep svnserve

 

其他:

①重启svn服务

1、关闭服务

sudo killall svnserver

2、启动SVN服务器

sudo svnserver -d -r /home/svn #路径是根目录

②实现http访问

之前已经建立起了apache与svn之间的连接,并授予了相关权限

下面通过修改apache2配置文件实现浏览器通过http访问

sudo vim /etc/apache2/mods-available/dav_svn.conf

在末尾添加

<Location /svn>

DAV svn

SVNParentPath /home/svn #版本库的路径

AuthType Basic

AuthName "test svn" #仓库名字

AuthUserFile /etc/apache2/dav_svn.passwd #密钥文件

Require valid-user

</Location>

创建svn用户,路径要与上面配置文件的密钥文件一致

htpasswd -c /etc/apache2/dav_svn.passwd admin #admin是用户名

 

输入密码;    重复输入密码(尽量与svn用户名与密码一致);    第一次要有参数 -c , 之后添加用户不需要, -c会清除文件原内容,每次新增svn用户就需要进行一次上述创建用户操作

 

之后重启apache

sudo /etc/init.d/apache2 restart

在浏览器网页上输入

localhost/svn/test #localhost是本机的IP地址

输入用户密码,即可实现访问SVN服务器

 

参考博主「Mr.Stick」文章,原文链接:https://blog.csdn.net/stickmangod/article/details/85315971

三、搭建Gitlab服务器

1、环境配置

(1)关闭防火墙防火墙相关指令

1:查看防火状态

systemctl status firewalld

2:暂时关闭防火墙

systemctl stop firewalld

3:永久关闭防火墙

systemctl disable firewalld

4:重启防火墙

systemctl enable firewalld

(2)关闭SElinux

输入getenforce,查看是否为disable状态

 (3)开启邮件服务

systemctl start postfix

systemctl enable postfix

2、部署Gitlab

(1)安装Gitlab依赖包

sudo apt-get install curl openssh-server ca-certificates postfix

执行完成后,出现邮件配置,选择Internet那一项(不带Smarthost的)

2.利用清华大学的镜像(https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/)来进行主程序的安装。

首先信任 GitLab 的 GPG 公钥:

curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null

3.

利用root用户1(不是sudo,而是root,命令号是su root),vim打开文件/etc/apt/sources.list.d/gitlab-ce.list,加入下面一行:

deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main

4.装 gitlab-ce:

sudo apt-get update #更新软件库

sudo apt-get install gitlab-ce

5.配置gitlab

①设置登录链接

vim /etc/gitlab/gitlab.rb

修改此文件中 external_url项为

external_url 'http://本机IP地址'

vim中搜索可用 “/” +要搜索内容

②初始化Gitlab,执行命令

sudo gitlab-ctl reconfigure

首次使用时配置时间较长

③打开 sshd 服务

service sshd start

④启动gitlab

sudo gitlab-ctl start

⑤检查GitLab是否安装好并且已经正确运行,输入下面的命令

sudo gitlab-ctl status

如果得到类似下面的结果,则说明GitLab运行正常

run: gitlab-workhorse: (pid 1148) 884s; run: log: (pid 1132) 884s

run: logrotate: (pid 1150) 884s; run: log: (pid 1131) 884s

run: nginx: (pid 1144) 884s; run: log: (pid 1129) 884s

run: postgresql: (pid 1147) 884s; run: log: (pid 1130) 884s

run: redis: (pid 1146) 884s; run: log: (pid 1133) 884s

run: sidekiq: (pid 1145) 884s; run: log: (pid 1128) 884s

run: unicorn: (pid 1149) 885s; run: log: (pid 1134) 885s

⑥ Gitlab 设置HTTPS方式进行访问

如果想要通过https进行访问,就需要把letsencrypt自动生成证书的配置打开,这样在执行重新让配置生效命令(gitlab-ctl reconfigure)的时候会自动给域名生成免费的证书并自动在gitlab自带的nginx中加上相关的跳转配置,都是全自动的,非常方便

vim /etc/gitlab/gitlab.rb

修改如下项

letsencrypt['enable']=true

letsencrypt['contact_emails']=['xxx@126.com(本人电子邮件地址)']

⑦Gitlab添加Smtp邮件功能

vim /etc/gitlab/gitlab.rb

修改如下项


设置完成后,重启gitlab

sudo gitlab-ctl reconfigure 初始化配置

sudo gitlab-ctl stop 停止gitlab服务器

sudo gitlab-ctl start 开启gitlab服务器

按照下列方法进行邮件测试

 

然后去邮箱看是否收到邮件

 

 

 

四、Gitlab的使用

在浏览器中输入 http://本机ip:制定端口号,然后change password,并使用root用户登录即可(后续动作根据提示操作),后续可使用Gitlab服务管理进行操作

 

 

 

 

 

 

 

 

 

 

 

 

 

其他:

 Gitlab数据备份

 

 Gitlab数据恢复

 

 Over

标签:SVN,svn,Git,run,gitlab,pid,apache2,Ubuntu,sudo
来源: https://blog.csdn.net/sinat_35676815/article/details/121933481

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有