安装的环境
- CentosOS 7 3.10.0-862.14.4.el7.x86_64
- 内存4G
- cpu4核
- Docker 18.09.0, build 4d60db4 安装教程
下载镜像
使用以下命令拉取远程镜像,默认标签为:latest1
$ docker pull gitlab/gitlab-ce
更换SSH端口
下载镜像的同时先将sshd服务占用的22端口改成其他端口(这边举例25565 25566 ε=ε=ε=(~ ̄▽ ̄)~)
先修改配置文件1
$ vi /etc/ssh/sshd_config
将其中的#Port 22改成Port 25566
然后,由于SELinux的原因还需要运行下面的命令25566 端口可以进行SSH连接1
2
3$ semanage port -a -t ssh_port_t -p tcp 25566
$ firewall-cmd --permanent --add-port=25566/tcp
$ firewall-cmd --reload
运行GitLab容器
因为Docker容器的数据如果没有保存的话,删除之后就会丢失,所以我们需要挂载相应的卷到容器内,先创建目录1
$ mkdir /data/gitlab
创建GitLab的容器1
2
3
4
5
6
7
8docker run \
    --publish 22:22 --publish 80:80 --publish 443:443 \
    --env GITLAB_OMNIBUS_CONFIG="external_url 'http://gitlab.initdeny.com/';" \
    --name mygitlab \
    -v /data/gitlab/conf:/etc/gitlab \
    -v /data/gitlab/logs:/var/log/gitlab \
    -v /data/gitlab/data:/var/opt/gitlab \
    -d gitlab/gitlab-ce
- --publish 端口:端口是将宿主机的端口映射到容器暴露的相应端口
- --env设置相应的环境变量,这边设置是解决 此处的显示问题,不进行设置将会展示容器ID 此处的显示问题,不进行设置将会展示容器ID
- -v将宿主机的目录挂载到容器的相应目录
- -d以后台方式运行容器
- --name给容器命名
查看启动容器的运行状态
| 1 | $ docker ps -a | 

STATUS是Up就欧了
配置管理员密码
直接输入就行了[]~( ̄▽ ̄)~*
然后用户名root登陆
额外的配置
- 如果想要配置邮件服务器的话,要修改相应文件(我这以网易邮箱为例)然后进入容器(mygitlab是容器名)1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14$ vi /data/gitlab/conf/gitlab.rb 
 gitlab_rails['smtp_enable'] = true
 gitlab_rails['smtp_address'] = "smtp.126.com"
 gitlab_rails['smtp_port'] = 25
 gitlab_rails['smtp_user_name'] = "[email protected]"
 gitlab_rails['smtp_password'] = "密码"
 gitlab_rails['smtp_domain'] = "126.com"
 gitlab_rails['smtp_authentication'] = "login"
 gitlab_rails['smtp_enable_starttls_auto'] = true
 gitlab_rails['smtp_tls'] = false
 gitlab_rails['gitlab_email_from'] = '[email protected]'
 gitlab_rails['gitlab_email_display_name'] = '[email protected]'运行1 $ docker exec -it mygitlab /bin/bash 然后使用1 
 2$ gitlab-ctl reconfigure 
 $ gitlab-ctl restartCtrl+P然后再按Ctrl+Q进行退出终端
 Done!参考连接: