ubuntu部署gitlab服务器

ubuntu部署gitlab服务器

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

1、更新命令

cd /home

mkdir gitlab

cd /gitlab
sudo apt update

sudo apt-get upgrade

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

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

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

2、安装Gitlab官方库

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

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

4、进行解压

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

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

sudo apt --fix-broken install
sudo apt-get update
sudo apt-get upgrade

5、安装成功。

在这里插入图片描述

6、获取本机固定ip

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

在这里插入图片描述

输入ifconfig获取关键信息

ifconfig

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

在这里插入图片描述

7、设置ip和端口号

编辑配置文件

sudo vim /etc/gitlab/gitlab.rb

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

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

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

chmod -R 755 /var/log/gitlab

寻找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

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

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

2、拉取镜像

在这里插入图片描述

拉取最新版镜像
gitlab/gitlab-ce:latest
例子
gitlab/gitlab-ce:16.2.1-ce.0

3、创建容器

设置目录映射

/docker/gitlab/etc/gitlab	rw	/etc/gitlab
/docker/gitlab/backups	rw	/var/opt/gitlab/backups

在这里插入图片描述

4、设置ip+端口

查看容器名
docker ps

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

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

# 启动gitlab服务 
gitlab-ctl reconfigure

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

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、进入容器

docker exec -it 容器id bash

2、旧服务器备份

gitlab-rake gitlab:backup:create

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编号备份中恢复

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

设置定时删除脚本

#!/bin/sh

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

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

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

此时可能会出现时区问题,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

宝塔搭建postgresql

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

在这里插入图片描述

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

host    all             all             0.0.0.1/0            md5

在这里插入图片描述

注意

idea首次上传项目被拒

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

git pull
git pull origin master
git pull origin master --allow-unrelated-histories
  • 13
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值