安装的环境
- 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
-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!参考连接: