当前位置:   article > 正文

ubuntu部署gitlab服务器

ubuntu部署gitlab

ubuntu部署gitlab服务器

笔者使用的ubuntu版本为20.04,gitlab版本为16.2.1,也是网上查阅的资料整合,如有侵权请联系。

1、更新命令

cd /home

mkdir gitlab

cd /gitlab
  • 1
  • 2
  • 3
  • 4
  • 5
sudo apt update

sudo apt-get upgrade

sudo apt-get install curl openssh-server ca-certificates postfix
  • 1
  • 2
  • 3
  • 4
  • 5

遇到图中情况点击tab跳转到确定上点击回车。

在这里插入图片描述
在这里插入图片描述

2、安装Gitlab官方库

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
  • 1

3、复制wget命令

前往Gitlab官网:https://packages.gitlab.com/gitlab/gitlab-ce,找到最新版本的gitlab-ce安装包,注意版本是ubuntu/focal

在这里插入图片描述
在这里插入图片描述

wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/focal/gitlab-ce_16.2.1-ce.0_amd64.deb/download.deb
  • 1

4、进行解压

sudo dpkg -i gitlab-ce_16.2.1-ce.0_amd64.deb
  • 1

如果运行dpkg报openssh-server相关的错误,请先执行下面三个命令:

sudo apt --fix-broken install
sudo apt-get update
sudo apt-get upgrade
  • 1
  • 2
  • 3

5、安装成功。

在这里插入图片描述

6、获取本机固定ip

笔者所使用的是虚拟机,需要现在vmware中将网络设置为桥接模式

在这里插入图片描述

输入ifconfig获取关键信息

ifconfig
  • 1

并将虚拟机ip设置为固定ip

在这里插入图片描述

7、设置ip和端口号

编辑配置文件

sudo vim /etc/gitlab/gitlab.rb
  • 1

如果出现vim识别不了的报错,运行下面两行命令即可

sudo rm /var/lib/dpkg/lock*
sudo apt-get update && sudo apt-get install vim
  • 1
  • 2

如果运行上述命令出现权限问题,运行下列命令即可

chmod -R 755 /var/log/gitlab
  • 1

寻找external_url字段将其设置为虚拟机的ip和想要设置的端口号,按esc,输入wq保存并退出

在这里插入图片描述

8、重启

通过以下命令重启服务

# 停止gitlab服务 
sudo gitlab-ctl stop

# 启动gitlab服务 
sudo gitlab-ctl reconfigure

# 重启所有gitlab组件 
sudo gitlab-ctl restart

# 启动所有gitlab组件 
sudo gitlab-ctl start

# 启用开机自启动
sudo systemctl enable gitlab-runsvdir.service
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

9、初始化root密码

#切换路径
cd /opt/gitlab/bin/

#打开控制台
sudo gitlab-rails console -e production
 
#查询用户账号信息并赋值给u
u=User.where(id:1).first

#设置root的密码
u.password='wxy123456'

#确认密码
u.password_confirmation='wxy123456'

#保存信息(注意有个感叹号)
u.save!

#退出
exit
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

9、登录

浏览器输入ip+端口号,点击右下角切换为中文

在这里插入图片描述

10、设置中文界面

点击头像>点击perferences

在这里插入图片描述

下滑找到language选择简体中文点击保存即可

在这里插入图片描述

宝塔面板进行docker部署gitlab

1、安装宝塔面板

ubuntu安装:
wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec

centos安装:
yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2、拉取镜像

在这里插入图片描述

拉取最新版镜像
gitlab/gitlab-ce:latest
例子
gitlab/gitlab-ce:16.2.1-ce.0
  • 1
  • 2
  • 3
  • 4

3、创建容器

设置目录映射

/docker/gitlab/etc/gitlab	rw	/etc/gitlab
/docker/gitlab/backups	rw	/var/opt/gitlab/backups
  • 1
  • 2

在这里插入图片描述

4、设置ip+端口

查看容器名
docker ps

进入容器
docker exec -it 容器名 bash

编辑配置文件
vi /etc/gitlab/gitlab.rb

# 启动gitlab服务 
gitlab-ctl reconfigure

# 重启所有gitlab组件 
gitlab-ctl restart
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

5、初始化root密码

#切换路径
cd /opt/gitlab/bin/

#打开控制台
gitlab-rails console -e production
 
#查询用户账号信息并赋值给u
u=User.where(id:1).first

#设置root的密码
u.password='xxxxxxxxxx'

#确认密码
u.password_confirmation='xxxxxxxxxx'

#保存信息(注意有个感叹号)
u.save!

#退出
exit
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

备份迁移

更新版本工具

1、进入容器

docker exec -it 容器id bash
  • 1

2、旧服务器备份

gitlab-rake gitlab:backup:create
  • 1

3、上传到新服务器的目录上

gitlab-ctl stop unicorn		#停止相关数据连接服务
gitlab-ctl stop sidekiq

切换到目录
cd /var/opt/gitlab/backups/
chmod 777 /var/opt/gitlab/backups/1530156812_2018_06_28_10.8.4_gitlab_backup.tar
#修改权限,如果是从本服务器恢复可以不修改
gitlab-rake gitlab:backup:restore BACKUP=1530156812_2018_06_28_10.8.4	
#从1530156812_2018_06_28_10.8.4编号备份中恢复
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

4、定时备份

设置自动备份

#更新并安装corn定时任务
apt-get update
apt-get install -y cron

#编辑定时任务
crontab -e

#查看定时任务
crontab -l

#查看服务是否启动
service cron status

#启动corn服务
service cron start

#每五分钟执行一次
*/5 * * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

#每天凌晨2点执行一次
crontab -e
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

#实际中
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create && /home/delete_old_files.sh
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

设置定时删除脚本

#!/bin/sh

# 指定?录路径
directory="/var/opt/gitlab/backups/"

# 删除过去一周之前的 .tar 文件
find "$directory" -maxdepth 1 -type f -name '*.tar' -mtime +7 -exec rm {} \;

echo "过去一周之前的 .tar 文件已删除"

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

此时可能会出现时区问题,docker默认时区是 UTC

5、更改时区

#1、进入容器: 使用以下命令进入正在运行的 GitLab 容器:

docker exec -it 容器id bash

#2、查看当前时区,可以运行:
cat /etc/timezone

#3、更改时区,例如切换到北京时间:
echo "Asia/Shanghai" > /etc/timezone
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


#4、重新加载配置:
dpkg-reconfigure -f noninteractive tzdata

#5、验证更改: 运行 date 命令查看更改后的当前日期和时间。
date
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

宝塔搭建postgresql

1、设置监听地址为允许所有人

在这里插入图片描述

2、设置认证允许的IP和认证方式

host    all             all             0.0.0.1/0            md5
  • 1

在这里插入图片描述

注意

idea首次上传项目被拒

打开terminal执行下面三行在提交

git pull
git pull origin master
git pull origin master --allow-unrelated-histories
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/682364
推荐阅读
相关标签
  

闽ICP备14008679号