配置镜像地址
1
2
3
|
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo
|
查询
1
2
3
|
yum list docker-ce --showduplicates | sort -r
|
安装docker
1
2
3
|
yum -y install docker-ce
|
启动docker 与 开机自动启动
1
2
3
4
5
6
|
systemctl start docker
systemctl enable docker
|
其他docker指令
1
2
3
4
5
6
7
8
9
10
11
12
|
docker version
sudo pip install docker-compose
docker-compose --version
|
安装gitlab
1:拉取gitlab镜像
1
2
3
|
docker pull gitlab/gitlab-ce
|
2:生成挂载目录
1
2
3
4
5
6
7
8
9
|
mkdir -p /data/gitlab/etc/gitlab
mkdir -p /data/gitlab/log
mkdir -p /data/gitlab/opt
|
3:启动容器
将容器/etc/gitlab目录挂载到宿主机/data/gitlab/etc目录下,若宿主机内此目录不存在将会自动创建
1
2
3
|
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
|
参数说明
1
2
3
4
5
6
7
8
9
10
11
12
|
-d:后台运行
-p:将容器内部端口向外映射
--name:命名容器名称
-v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录
|
设置ROOT账号密码
这时,gitlab已经跑起来了,通过浏览器能正常访问了,那么问题来了,初始化的管理员账号是什么呢?是 root,那它的密码是什么呢?
我也不知道它的密码是多少,进容器里修改root的密码
谨记原则:复制命令敲回车
- 进入容器
1
2
3
|
docker exec -it gitlab bash
|
- 进入bin目录
进入gitlab的bin目录
- 执行命令 执行gitlab-rails console
1
2
3
|
gitlab-rails console
|
- 执行命令
找到root的用户,输入u=User.where(id:1).first,然后回车
1
2
3
|
u=User.where(id:1).first
|
- 修改密码
修改password,输入u.password=‘12345678’,然后回车
执行命令
1
2
3
|
u.password_confirmation='12345678'
|
- 确认密码
执行命令
1
2
3
|
u.password_confirmation='12345678'
|
- 保存修改
保存修改,输入u.save,然后回车,等到输出true,这时,密码修改成功
执行命令
完整操作记录
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
[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域名
1
2
3
4
5
6
|
docker exec -it gitlab bash
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
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设置为中文版