一、环境准备
1. 准备一台虚拟机\或者购买服务器
2. 虚拟机硬件要求
2.1 内存不得少于4G,否则启动会报502错误,可自行百度解决,将虚拟机的swap分区调整为2G大小即可
2.2 CPU2核2G
2.3 硬盘至少20G
3. 系统镜像
centos 7.9
二、安装docker
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce
systemctl enable docker
systemctl start docker
docker version




三、拉取Gitlab镜像
docker pull gitlab/gitlab-ce:latest

四、容器运行Gitlab
mkdir gitlab gitlab/etc gitlab/log gitlab/opt
docker run -id -p 3000:80 -p 9922:22 -v /root/gitlab/etc:/etc/gitlab -v /root/gitlab/log:/var/log/gitlab -v /root/gitlab/opt:/var/opt/gitlab --restart always --privileged=true --name gitlab gitlab/gitlab-ce
'''
命令解释:
-i 以交互模式运行容器,通常与 -t 同时使用命令解释:
-d 后台运行容器,并返回容器ID
-p 3000:80 将容器内80端口映射至宿主机9980端口,这是访问gitlab的端口
-p 9922:22 将容器内22端口映射至宿主机9922端口,这是访问ssh的端口
-v ./gitlab/etc:/etc/gitlab 将容器/etc/gitlab目录挂载到宿主机./gitlab/etc目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样
--restart always 容器自启动
--privileged=true 让容器获取宿主机root权限
--name gitlab-test 设置容器名称为gitlab
gitlab/gitlab-ce 镜像的名称,这里也可以写镜像ID
'''

五、修改配置文件
docker exec -it gitlab /bin/bash
vi /etc/gitlab/gitlab.rb
external_url 'http://101.133.225.166'
gitlab_rails['gitlab_ssh_host'] = '101.133.225.166'
gitlab_rails['gitlab_shell_ssh_port'] = 9922
gitlab-ctl reconfigure
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
gitlab:
host: 101.133.225.166
port: 3000
https: false
gitlab-ctl restart
exit





六、浏览器访问
http://192.168.44.180:3000

七、修改登录密码
docker exec -it gitlab /bin/bash
gitlab-rails console -e production
user = User.where(id:1).first
user.password='这里设置你的密码'
user.save!
exit


八、创建新的项目
1. 新建项目
2. 创建空白项目
3. 项目名称




九、提交代码
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
git remote
git remote remove origin
git remote add origin http://192.168.44.180:3000/gitlab-instance-705ba61b/cops_api.git
git add .
git commit -m '提交说明'
git branch -M main
git push -uf origin main

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!