用Docker安装gitlab

软件开发大郭
0 评论
/
26 阅读
/
3587 字
18 2022-12
分类:

配置镜像地址

yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo

查询

yum list docker-ce --showduplicates | sort -r

安装docker

yum -y install docker-ce

启动docker 与 开机自动启动

systemctl start docker
systemctl enable docker

其他docker指令

docker version

sudo pip install docker-compose
docker-compose --version

安装gitlab

1:拉取gitlab镜像

docker pull gitlab/gitlab-ce  

2:生成挂载目录

mkdir -p /data/gitlab/etc/gitlab
mkdir -p /data/gitlab/log
mkdir -p /data/gitlab/opt

3:启动容器

将容器/etc/gitlab目录挂载到宿主机/data/gitlab/etc目录下,若宿主机内此目录不存在将会自动创建

docker run -d -p 8443:443 -p 8090:80 -p 8022:22 --restart always --name gitlab -v /data/gitlab/etc:/etc/gitlab -v /data/gitlab/log:/var/log/gitlab -v /data/gitlab/data:/var/opt/gitlab --privileged=true gitlab/gitlab-ce

参数说明

-d:后台运行
-p:将容器内部端口向外映射
--name:命名容器名称
-v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录

设置ROOT账号密码

这时,gitlab已经跑起来了,通过浏览器能正常访问了,那么问题来了,初始化的管理员账号是什么呢?是 root,那它的密码是什么呢?
我也不知道它的密码是多少,进容器里修改root的密码

谨记原则:复制命令敲回车

  1. 进入容器
docker exec -it gitlab bash
  1. 进入bin目录

 进入gitlab的bin目录

cd /opt/gitlab/bin
  1. 执行命令 执行gitlab-rails console

    gitlab-rails console
  2. 执行命令

找到root的用户,输入u=User.where(id:1).first,然后回车

u=User.where(id:1).first
  1. 修改密码

修改password,输入u.password=‘12345678’,然后回车
执行命令

u.password_confirmation='12345678'
  1. 确认密码

执行命令

u.password_confirmation='12345678'
  1. 保存修改

保存修改,输入u.save,然后回车,等到输出true,这时,密码修改成功
执行命令

u.save

完整操作记录

[root@localhost ~]# docker exec -it gitlab bash
root@host-name:/# cd /opt/gitlab/bin
root@host-name:/opt/gitlab/bin#  gitlab-rails console
--------------------------------------------------------------------------------
 Ruby:         ruby 2.7.4p191 (2021-07-07 revision a21a3b7d23) [x86_64-linux]
 GitLab:       14.5.0 (f8796c0836e) FOSS
 GitLab Shell: 13.22.0
 PostgreSQL:   12.7
--------------------------------------------------------------------------------
Loading production environment (Rails 6.1.4.1)
irb(main):001:0> u=User.where(id:1).first
=> #<User id:1 @root>
irb(main):002:0> u.password='12345678'
=> "12345678"
irb(main):003:0>  u.password_confirmation='12345678'
=> "12345678"
irb(main):004:0> u.save
Enqueued ActionMailer::MailDeliveryJob (Job ID: aefddd21-8386-465a-8bb8-d0373adef725) to Sidekiq(mailers) with a:0x00007fe8ca55a978 @uri=#<URI::GID gid://gitlab/User/1>>]}
=> true
irb(main):005:0> exit

修改gitlab域名

docker exec -it gitlab bash
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
  gitlab:
    ## Web server settings (note: host is the FQDN, do not include http://)
    host: 192.168.1.200
    port: 8090
 ssh_host: 192.168.1.200

将gitlab设置为中文版

    暂无数据