Linux环境docker安装gitlab(简单粗暴,复制即用)

前言

为方便运维,本人将常用docker安装镜像方式总结如下:

一、安装gitlab

1.查询镜像

java 复制代码
docker search gitlab

2.拉取镜像

可以根据自己需求拉取想要的版本,我选的是中文版

java 复制代码
docker pull twang2218/gitlab-ce-zh

3.创建挂载路径

java 复制代码
mkdir -p /mydata/gitlab/etc
mkdir -p /mydata/gitlab/log
mkdir -p /mydata/gitlab/data

4.启动镜像

java 复制代码
docker run -d -p 8443:443 -p 8090:80 -p 8022:22 --restart always --name gitlab -v /mydata/gitlab/etc:/etc/gitlab -v /mydata/gitlab/log:/var/log/gitlab -v /mydata/gitlab/data:/var/opt/gitlab --privileged=true twang2218/gitlab-ce-zh

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权限

twang2218/gitlab-ce-zh #镜像的名称,这里也可以写镜像ID

5.查看Gitlab是否已经启动

java 复制代码
docker ps

二、配置Gitlab

1.首先,先进入容器

java 复制代码
docker exec -it gitlab bash

2.修改gitlab.rb文件中的IP与端口号

java 复制代码
vim /etc/gitlab/gitlab.rb

将一下内容复制到gitlab.rb文件(注意修改成自己的ip),修改完成后 :wq 保存退出

java 复制代码
external_url 'http://xx.xx.xx.xx'
gitlab_rails['gitlab_ssh_host'] = '192.168.XX.XX'
gitlab_rails['gitlab_shell_ssh_port'] = 8022

3.配置gitlab.yml文件

java 复制代码
vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

如图,IP修改成自己的IP,端口和启动命令端口一致,默认80端口,但是因为一般服务器80端口都被nginx占用,所以我这没有使用80

4.重启服务

java 复制代码
gitlab-ctl restart

5.使用浏览器打开Gitlab

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

URL:http://192.168.XX.XX:8090/

到了这一步说明已经安装成功了,可以去使用了

相关推荐
眠修6 分钟前
Kuberrnetes 服务发布
linux·运维·服务器
裁二尺秋风24 分钟前
CI/CD — Pipeline的使用以及Blue Ocean多分支流水线的使用方法
ci/cd·gitlab·jenkins
hunjinYang25 分钟前
Tomcat镜像实战:掌握Dockerfile的编写以及发布项目
docker·tomcat
好奇的菜鸟1 小时前
Docker 配置项详解与示例
运维·docker·容器
即将头秃的程序媛3 小时前
centos 7.9安装tomcat,并实现开机自启
linux·运维·centos
fangeqin3 小时前
ubuntu源码安装python3.13遇到Could not build the ssl module!解决方法
linux·python·ubuntu·openssl
爱奥尼欧4 小时前
【Linux 系统】基础IO——Linux中对文件的理解
linux·服务器·microsoft
超喜欢下雨天5 小时前
服务器安装 ros2时遇到底层库依赖冲突的问题
linux·运维·服务器·ros2
tan77º6 小时前
【Linux网络编程】网络基础
linux·服务器·网络
笑衬人心。6 小时前
Ubuntu 22.04 + MySQL 8 无密码登录问题与 root 密码重置指南
linux·mysql·ubuntu