本次案例使用centOS,需要安装docker,如果没有安装docker,请参考:https://blog.youkuaiyun.com/qq_32092505/article/details/79884302
进入正题
Gitlab提供社区版是免费的,已经能够满足日常使用的大多数场景;我们这里安装的是gitlab社区版
友情提示:内存最好大于4G,如果内存实在不够,只有1-2G的情况下,需要启用swap分区
1.通过docker search gitlab-ce查询可安装的gitlab镜像
可以看到有中文版的可以选择,这里我们使用stars最多的版本,我用的阿里云上的主机下的,速度还可以,很快就下载完成;如果下载速度比较慢可以修改镜像源为阿里的镜像源
执行
docker pull gitlab/gitlab-ce
下载完成后我们通过docker images 可以查看到镜像,获取镜像ID
2.运行镜像
docker run --detach --publish 8001:443 --publish 8002:80 --publish 8003:22 --name gitlab --restart always
--volume /root/gitlab/etc:/etc/gitlab
--volume /root/gitlab/logs:/var/log/gitlab
--volume /root/gitlab/data:/var/opt/gitlab f77dd1b93b45
这里三个-v分别是容器的配置、日志、数据的映射,大家可以先在制定位置创建好
3.查看运行状态
docker ps
可以看到gitlab服务已经正常启动了
访问我们的8002端口,可以看到
界面好像不提正常,没办法我用的阿里云虚拟机,只有2个G的内存,一会就要崩掉了,这里我们可以用docker ps 可以看到这个docker服务已经不正常了
就是由于内存不够用导致的,可能界面还会显示502等等,
但我们安装都已经结束了,大家可以用大一点的内存
4.内存确实不够怎么办?
如果我们确实只有1-2G内存,难就跑不起来了吗????
比如博主,阿里云的主机,只有2G的内存,还是单核的,咋玩?
解决方法;启用swap交换区
4.1我们可以用free -h 查swap交换去是否启用:
我这里已经启用了,如果未启用,swap 那一行的数值全部为0
4.2启用swap
执行 swapon -a
4.3设置swap使用阈值
cat /proc/sys/vm/swappiness
若swappiness=0表示物理内存用完后才使用swap空间
若swappiness=100表示活跃使用swap分区,建议内存较小的设置成100
vi /etc/sysctl.conf 找到对应swappiness值并修改
4.4生成一个大小为1G的swap文件
dd if=/dev/zero of=/swap-file bs=1M count=1024
4.5将交换文件格式化为swap分区
mkswap /swap-file
4.6启动分区
swapon /swap-file
4.7配置/etc/fstab
vi /etc/fstab
加入一行
/swap-file swap swap defaults 0 0
配置结束,重启系统
shutdown -r now
启动后可看到
再次访问gitlab-->*****:8002
第一次需要修改密码,登陆成功,完美结束!!!