1、安装 Docker
安装必要工具
1
[root@vm_10_14_centos ~] # yum - y install yum - utils device - mapper - persistent - data lvm2
添加 Docker-ce 镜像源并安装
1
2
3
4
5
6
7
8
[ root @vm_10_14_centos ~ ] # yum-config-manager --add-repo
http: //mi rrors . aliyun . com /docker-ce/ linux /centos/ docker - ce . repo
[ root @vm_10_14_centos ~ ] # yum makecache fast
[ root @vm_10_14_centos ~ ] # yum -y install docker-ce[root@gitlab ~]# yum makecache fast
[ root @vm_10_14_centos ~ ] # yum -y install docker-ce
[ root @vm_10_14_centos ~ ] # systemctl start docker
[ root @vm_10_14_centos ~ ] # systemctl enable docker
Created symlink from /etc/s ystemd /system/m ulti - user . target . wants /docker.service to / usr /lib/s ystemd /system/ docker . service .
添加 Docker 镜像加速
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
[ root@vm_10_14_centos ~]# vim /etc/docker/daemon.json
{
"registry-mirrors": [ "https://9w1hl6qt.mirror.aliyuncs.com" ]
}
[ root@vm_10_14_centos ~]# systemctl daemon-reload
[ root@vm_10_14_centos ~]# systemctl restart docker
[ root@vm_10_14_centos ~]# rpm -qa docker
[ root@vm_10_14_centos ~]# rpm -qa docker-ce
docker-ce-18.09.0-3.el7.x86_64
[ root@vm_10_14_centos ~]# docker --version
Docker version 18.09.0, build 4d60db4
[ root@vm_10_14_centos ~]# docker version
Client :
Version : 18.09.0
API version : 1.39
Go version : go1.10.4
Git commit : 4d60db4
Built : Wed Nov 7 00:48:22 2018
OS/Arch : linux/amd64
Experimental : false
Server : Docker Engine - Community
Engine :
Version : 18.09.0
API version : 1.39 (minimum version 1.12)
Go version : go1.10.4
Git commit : 4d60db4
Built : Wed Nov 7 00:19:08 2018
OS/Arch : linux/amd64
Experimental : false
2、安装 Docker-compose
下载 Docker-compose 二进制文件并添加执行权限
1
2
3
4
5
6
7
8
[ root @vm_10_14_centos ~] # curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 617 0 617 0 0 959 0 -- :- - :- - -- :- - :- - -- :- - :- - 958
100 11 . 2 M 100 11 . 2 M 0 0 1824 k 0 0 : 00 : 06 0 : 00 : 06 -- :- - :- - 2422 k
[ root @vm_10_14_centos ~] # chmod +x /usr/local/bin/docker-compose
[ root @vm_10_14_centos ~] # docker-compose --version
docker - compose version 1 . 23 . 2 , build 1110 ad01
3、安装 Gitlab
(1)编辑 docker-compose 的 yml 文件
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
[ root @vm_10_14_centos ~ ] # mkdir gitlab
[ root @vm_10_14_centos ~ ] # cd gitlab/
[ root @vm_10_14_centos gitlab ] # vim docker-compose.yml
version: '2'
services:
gitlab:
image: 'twang2218/gitlab-ce-zh:11.1.4'
container_name: "gitlab"
restart: unless - stopped
privileged: true
hostname: 'gitlab'
environment:
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://129.204.133.242'
gitlab_rails [ 'time_zone' ] = 'Asia/Shanghai'
gitlab_rails [ 'smtp_enable' ] = true
gitlab_rails [ 'smtp_address' ] = "smtp.aliyun.com"
gitlab_rails [ 'smtp_port' ] = 465
gitlab_rails [ 'smtp_user_name' ] = "kimasd102419@aliyun.com" #用自己的aliyun邮箱
gitlab_rails [ 'smtp_password' ] = "axbc1kof"
gitlab_rails [ 'smtp_domain' ] = "aliyun.com"
gitlab_rails [ 'smtp_authentication' ] = "login"
gitlab_rails [ 'smtp_enable_starttls_auto' ] = true
gitlab_rails [ 'smtp_tls' ] = true
gitlab_rails [ 'gitlab_email_from' ] = 'kimasd102419@aliyun.com'
gitlab_rails [ 'gitlab_shell_ssh_port' ] = 22
ports:
- '80:80'
- '443:443'
- '22:22'
volumes:
- /opt/gi tlab /config:/ etc / gitlab
- /opt/gi tlab /data:/ var /opt/gi tlab
- /opt/gi tlab /logs:/ var /log/gi tlab
(2)创建相关目录
1
2
3
4
5
6
[ root@vm_10_14_centos gitlab]# mkdir /opt/gitlab/{config,data,logs} -p
[ root@vm_10_14_centos gitlab]# ls -l /opt/gitlab/
total 12
drwxr-xr-x 2 root root 4096 Dec 8 11:35 config
drwxr-xr-x 2 root root 4096 Dec 8 11:35 data
drwxr-xr-x 2 root root 4096 Dec 8 11:35 logs
(3)拉取 gitlab 中文版镜像
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
[root@vm_10_14_centos gitlab]# docker pull twang2218/gitlab-ce-zh : 11.1.4
11.1.4 : Pulling from twang 2218/gitlab -ce -zh
8ee29e426c26 : Pull complete
6e83b260b73b : Pull complete
e26b65fd1143 : Pull complete
40dca07f8222 : Pull complete
b420ae9e10b3 : Pull complete
a218309dd589 : Pull complete
5c60fd7ba0ce : Pull complete
659c2144b5a3 : Pull complete
8289bbac0d0e : Pull complete
31bbd150e8a7 : Pull complete
9114e78243fa : Pull complete
0b97fa2153bc : Pull complete
308c7e15be6a : Pull complete
b7f31b8e487d : Pull complete
cbbb6dec5000 : Pull complete
0241c9ad6a16 : Pull complete
7fa6f0b53edd : Pull complete
1c2861e152b2 : Pull complete
0536f3466f66 : Pull complete
Digest : sha 256:3c 2372e 3285e 6d 6933ddebb 5ee 3ae 0c 4bbf 7cb 235084e 54d 33d 7f 0ddf 4813c 4a
Status : Downloaded newer image for twang 2218/gitlab -ce -zh :11.1.4
[root@vm_10_14_centos gitlab] # docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
twang2218/gitlab-ce-zh 11.1.4 1935cc9f8798 4 months ago 1.61GB
(4)启动 gitlab 的容器
1
2
3
4
5
6
7
8
9
10
11
12
13
[ root @ vm_10_14_centos gitlab ] # docker - compose up - d
Creating network "gitlab_default" with the default driver
Creating gitlab ... error
ERROR : for gitlab Cannot start service gitlab : b 'driver failed programming external connectivity on endpoint gitlab (9308ca74b8491c556263eac9fb9b0abcb25258d9e2df5733fc4d9143d6b18dcc): Error starting userland proxy: listen tcp 0.0.0.0:22: bind: address already in use'
ERROR : for gitlab Cannot start service gitlab : b 'driver failed programming external connectivity on endpoint gitlab (9308ca74b8491c556263eac9fb9b0abcb25258d9e2df5733fc4d9143d6b18dcc): Error starting userland proxy: listen tcp 0.0.0.0:22: bind: address already in use'
ERROR : Encountered errors while bringing up the project .
[ root @ vm_10_14_centos gitlab ] # vim / etc / ssh / sshd_config
[ root @ vm_10_14_centos gitlab ] # systemctl restart sshd
[ root @ vm_10_14_centos gitlab ] # netstat - tulnp | grep 22
tcp 0 0 0 . 0 . 0 . 0 : 60022 0 . 0 . 0 . 0 : * LISTEN 4044 / sshd
这里需要注意的是,由于 gitlab 容器需要用到 22 端口,不能与宿主机冲突,这里需要修改宿主机的 sshd 服务的监听端口
1
2
3
4
5
6
[ root@vm_10_14_centos gitlab] # docker-compose ps
Name Command State Ports
------------------------------------------------------------------------------
------------------------
gitlab /assets/wrapper Up ( healthy) 0.0.0.0:22->22/tcp, 0.0.0.0:443-
>443/tcp, 0.0.0.0:80->80/tcp
(5)gitlab 设置开机启动
1
2
3
4
5
6
7
[ root@vm_10_14_centos gitlab] # chmod +x /etc/rc.local
[ root@vm_10_14_centos gitlab] # ls -l /etc/rc.local
lrwxrwxrwx. 1 root root 13 Jul 7 16:43 /etc/rc.local -> rc.d/rc.local
[ root@vm_10_14_centos gitlab] # echo "cd /root/gitlab && docker-compose up -d" >>
/etc/rc.local
[ root@gitlab gitlab] # tail -1 /etc/rc.local
cd /root/gitlab && docker-compose up -d
(6)gitlab 管理界面
地址:http://129.204.133.242
账号:root
密码:首次登陆设置
Licensed under CC BY-NC-SA 4.0
最后更新于 Jan 06, 2025 05:52 UTC