Docker下安装GitLab
一、下载镜像
官方版本是:gitlab/gitlab-ce:latest,为了提升速度这里使用阿里云的仓库
$ docker pull registry.cn-hangzhou.aliyuncs.com/imooc/gitlab-ce:latest
二、运行GitLab容器
使用docker命令运行容器,注意修改hostname为自己喜欢的名字,-v部分挂载目录要修改为自己的目录。
端口映射这里使用的都是安全端口,如果大家的环境没有端口限制或冲突可以使用与容器同端口,如:-p 443:443 -p 80:80 -p 22:22
docker run -itd -p 443:443 -p 80:80 -p 22:22 --name gitlab gitlab-ce
三、创建目录
通常会将 GitLab 的配置 (etc) 、 日志 (log) 、数据 (data) 放到容器之外, 便于日后升级, 因此请先准备这三个目录。
mkdir -p /srv/gitlab/config
mkdir -p /srv/gitlab/logs
mkdir -p /srv/gitlab/data
四、启动运行
docker run --detach --hostname xx.xx.xx.xx --publish 8443:443 --publish 8880:80 --publish 8222:22 --name gitlab --restart always
--volume /srv/gitlab/config:/etc/gitlab
--volume /srv/gitlab/logs:/var/log/gitlab
--volume /srv/gitlab/data:/var/opt/gitlab
--privileged=true registry.cn-hangzhou.aliyuncs.com/imooc/gitlab-ce:latest
五、停止
docker stop gitlab
重启
docker restart gitlab
docker restart 532dcf2f3e
启动
docker start gitlab
docker start 532dcf2f3e
刚重启会报502,应该是初始化未完毕,需要等待一会就正常了。
重启报错
driver failed programming external connectivity on endpoint gitlab (9ab88938e5715f746077006341f4a1b67fef9c70f3b1b31d1bd75415006b238b): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8880 -j DNAT --to-destination xx.xx.xx.xx:80 !
解决 :重启docker服务 systemctl restart docker
六、关闭防火墙
8880端口不通,关闭防火墙
systemctl stop firewalld