1. 初始化docker环境
yum install -y docker-ce docker-compose
systemctl start docker
echo '{"registry-mirrors":["https://ung2thfc.mirror.aliyuncs.com"]}' > /etc/docker/daemon.json
systemctl restart docker
systemctl enable docker
docker version
2. 安装Git
yum -y install git
3. 安装Gitlab
3.1 拉取Gitlab镜像
docker search gitlab
docker pull gitlab/gitlab-ce:latest
查看镜像
[root@ansible ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gitlab/gitlab-ce latest 46cd6954564a 9 months ago 2.36GB
3.2 启动Gitlab容器
[root@ansible ~]# mkdir -p /ajunyu/soft/docker/docker-gitlab
[root@ansible ~]# cd /ajunyu/soft/docker/docker-gitlab/
[root@ansible ~]# vim docker-compose.yml
version: '3'
services:
gitlab:
image: 'gitlab/gitlab-ce:latest'
container_name: gitlab
restart: always
environment:
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://16.188.100.66:9999' #端口号最好不要大于10000
gitlab_rails['gitlab_shell_ssh_port'] = 9922
gitlab_rails['time_zone'] = 'Asia/Shanghai'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "ajunyu163"
gitlab_rails['smtp_password'] = "授权码"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = 'ajunyu163@163.com'
ports:
- '9999:9999'
- '9922:9922'
volumes:
- /ajunyu/gitlab/config:/etc/gitlab
- /ajunyu/gitlab/data:/var/opt/gitlab
- /ajunyu/gitlab/logs:/var/log/gitlab
[root@ansible docker-gitlab]# docker-compose up -d
Creating network "dockergitlab_default" with the default driver
Creating gitlab ... done
[root@ansible docker-gitlab]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d43930885743 gitlab/gitlab-ce:latest "/assets/wrapper" 3 minutes ago Up 3 minutes (healthy) 22/tcp, 80/tcp, 0.0.0.0:9922->9922/tcp, :::9922->9922/tcp, 443/tcp, 0.0.0.0:9999->9999/tcp, :::9999->9999/tcp gitlab
查询日志,查看启动情况
[root@ansible docker-gitlab]# docker-compose logs -f
......
gitlab | - execute the ruby block restart_log_service
gitlab | * directory[/opt/gitlab/service] action create (up to date)
gitlab | * link[/opt/gitlab/service/grafana] action create (up to date)
gitlab | * ruby_block[wait for grafana se