在成功完成docker的基础实验以后,尝试着使用docker搭建本身的gitlab,用来存放本身的代码。本文主要介绍使用docker搭建gitlab过程当中遇到的问题,个人服务器系统是:Ubuntu Server 14.04.1 LTS 64位html
在搭建过程当中遇到了不少问题,比较突出的三个问题是:git
1.docker下载镜像缓慢,每次须要大概几个小时;docker
2.docker下载完成以后,运行镜像服务器死机;ubuntu
3.docker安装并成功运行gitlab容器以后,访问gitlab发现一直出现502错误。vim
下面将这三个问题穿插在安装搭建gitlab过程当中进行解决,有的问题解决方案可能不止一种,也有的问题会与服务器的版本,服务器的配置相关。服务器
1、gitlab镜像安装准备工做ssh
1.对于上述提到的第三个问题,由于个人服务器配置比较low(1G,50G),而GitLab对系统硬件有要求,主要就是内存大于2G,不然或碰到奇怪的错误。因此我通过几回尝试安装一直显示502错误(纠结了三四天,查了两天的资料)。没办法,穷啊,那只有找解决方案。终于找到一篇相关的文章小型云服务器搭建GitLab遇到的坑 ,核心思想是增长服务器的swap空间。这个问题居然成功解决。gitlab
查看内存信息:阿里云
sudo free -h
ubuntu@VM-50-13-ubuntu:~$ free -h total used free shared buffers cached Mem: 993M 181M 812M 376K 34M 77M -/+ buffers/cache: 70M 923M Swap: 0B 0B 0B
能够看到swap的空间为0B ,接下来增长swap空间具体操做:spa
sudo -i # 切换root权限 dd if=/dev/zero of=/var/swap bs=1024 count=2048000 #分区大小设为2g
ls -lh /var/swap # 验证
mkswap /var/swap #启动分区
swapon /var/swap #激活
执行完上述命令,再次使用free -h命令能够看到Swap变成2GB
2、安装完成docker(可参考docker----起步)。
在下载镜像的时候,发现下载的很慢,很捉鸡。须要配置加速器,docker----起步文章中配置的加速器,好像与个人系统彷佛不搭噶,最后看腾讯云的镜像加速器才发现,我配置加速器的地方错了,由于个人系统是Ubuntu14 因此应该配置在/etc/default/docker中。最后我将加速器配置成阿里云的镜像加速器 在注册完成以后,我得到了个人专属加速器地址(虽然不知道真假),具体查看方式是,在容器镜像服务-->镜像加速器中能够看到。
vim /etc/default/docker #而后修改其中的DOCKER_OPTS
如个人配置修改结果为:
# Use DOCKER_OPTS to modify the daemon startup options. DOCKER_OPTS="--registry-mirror=https://dg9t1zch.mirror.aliyuncs.com" # 改地址为阿里云给个人镜像加速器地址
重启docker服务后,而后执行 sudo docker info ,能够看到输出中有以下信息:
Registry Mirrors: https://dg9t1zch.mirror.aliyuncs.com/
而后下载镜像,我这里的镜像是阿里云上的一个镜像,执行命令,你会发现下载速度很是快:
docker run --detach \ --publish 443:443 --publish 10080:80 --publish 22: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 \ twang2218/gitlab-ce-zh:latest # 该镜像是aliyun上的一个镜像,地址https://cr.console.aliyun.com/#/imageDesc/cn-hangzhou/lab99/gitlab-ce-zh/detail
3、SSH端口和这里的22端口可能会有冲突,致使链接不上去,所以设置ssh端口为别的端口就能够了
vim /etc/ssh/sshd_config # 找到里边对应的Port,将22修改成1022或别的端口
重启ssh服务。
而后访问服务器地址+10080端口,有时候仍是会出现502错误,须要稍等一会,而后从新刷新几回就能够了。
看到配置完成的gitlab特别开心=-=。