常用环境部署(八)——Docker安装GitLab

1、拉取gitlab社区版本镜像

(1)拉取13.10.2版本

复制代码
docker pull gitlab/gitlab-ce:13.10.2-ce.0

(2)拉取最新版的

复制代码
docker pull gitlab/gitlab-ce:latest

注意:下面安装以13.10.2版本为例

2、创建挂载目录

复制代码
mkdir -p /usr/local/gitlab/etc

mkdir -p /usr/local/gitlab/log

mkdir -p /usr/local/gitlab/data

3、启动GitLab服务

(1)查看镜像

复制代码
docker images

(2)启动 GitLab服务

复制代码
docker run -d -p 8443:443 -p 8090:80 -p 8022:22 --restart always --name gitlab -v /usr/local/gitlab/etc:/etc/gitlab -v /usr/local/gitlab/log:/var/log/gitlab -v /usr/local/gitlab/data:/var/opt/gitlab --privileged=true gitlab/gitlab-ce:13.10.2-ce.0

命令解释如下:

复制代码
docker run 
-d                #后台运行,全称:detach
-p 8443:443      #将容器内部端口向外映射
-p 8090:80       #将容器内80端口映射至宿主机8090端口,这是访问gitlab的端口
-p 8022:22       #将容器内22端口映射至宿主机8022端口,这是访问ssh的端口
--restart always #容器自启动
--name gitlab    #设置容器名称为gitlab
-v /usr/local/gitlab/etc:/etc/gitlab    #将容器/etc/gitlab目录挂载到宿主机/usr/local/gitlab/etc目录下,若宿主机内此目录不存在将会自动创建
-v /usr/local/gitlab/log:/var/log/gitlab    #与上面一样
-v /usr/local/gitlab/data:/var/opt/gitlab   #与上面一样
--privileged=true         #让容器获取宿主机root权限
gitlab/gitlab-ce:13.10.2-ce.0    #镜像的名称,这里也可以写镜像ID

(3)查看GitLab是否启动

复制代码
docker ps

4、 配置GitLab

(1)进入容器

复制代码
docker exec -it gitlab bash

(2)修改gitlab.rb文件

复制代码
//先进入到gitlab目录
cd /etc/gitlab   
//编辑gitlab.rb文件  
vim gitlab.rb

(3)修改gitlab.rb文件中的IP与端口号

复制代码
// 在gitlab创建项目时候http地址的host(不用添加端口)
external_url 'http://xx.xx.xx.xx'

(4)配置gitlab.yml文件

先进入到config目录下

复制代码
cd /opt/gitlab/embedded/service/gitlab-rails/config

打开编辑gitlab.yml文件

复制代码
vim gitlab.yml

修改host 与上面.rb文件修改的一致,修改port 为8090

5、重启GitLab服务(修改完配置要重启服务)

(1)容器内重启命令

复制代码
gitlab-ctl restart

(2)退出容器

复制代码
exit

(3) 常用命令

复制代码
// 这里的gitlab 就是我们上一步docker run 当中使用--name 配置的名字

//容器外停止
docker stop gitlab   

//容器外重启
docker restart gitlab

//进入容器命令行
docker exec -it gitlab bash

//容器中应用配置,让修改后的配置生效
gitlab-ctl reconfigure

6、访问GitLab

(1)使用浏览器打开GitLab

**注意:**第一次访问默认是root账户,会需要修改密码(密码至少8位数)设置好之后确定就行

访问链接如下:

复制代码
http://XXX.XX.XX.XX:8090/
相关推荐
java_logo2 小时前
Docker 部署 CUPS Web:浏览器即可管理打印机与打印任务
docker·容器·打印机·轩辕镜像·cups web·cups web 镜像部署·cups web 部署教程
数据知道4 小时前
容器安全入门:Docker 逃逸原理与 5 个经典 CVE
安全·网络安全·docker·容器
张忠琳6 小时前
【NPU】Ascend Docker Runtime v26.0.1 之三 runtime/dcmi/ — 超深度逐行分析
云原生·容器·kubernetes·npu·docker-runtime
giaming0237 小时前
告别Docker Desktop!一款轻量级原生开发环境管理工具:FlyEnv
运维·docker·容器
自强的小白8 小时前
Docker命令
java·docker·容器
暗影凋落10 小时前
docker-image 工具展示更详细镜像层内容
运维·docker·容器
极客先躯10 小时前
高级java每日一道面试题-2026年05月11日-实战篇[Docker]-如何容器化金融产品推荐系统?
java·运维·docker·容器·金融·高级面试·金融产品推荐系统
江湖有缘12 小时前
Docker实战 : 使用Docker部署Musicn音乐下载工具
docker·容器·eureka
沉迷学习 日益消瘦12 小时前
17-Custom Resource 入门
docker·容器·kubernetes
流星白龙13 小时前
【Docker】2.Docker 核心原理与架构
docker·架构·dubbo