gitlab介绍概述
GitLab 是一个用于仓库管理系统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。Github是公共的git仓库,而Gitlab适合于搭建企业内部私有git仓库
官网:
https://about.gitlab.com/
https://github.com/gitlabhq/gitlabhq
前端:Nginx,用于页面及Git tool走http或https协议
后端:Gitlab服务,采用Ruby on Rails框架,通过unicorn实现后台服务及多进程
SSHD:开启sshd服务,用于用户上传ssh key进行版本克隆及上传。注:用户上传的ssh key是保存到git账户中
数据库:目前仅支持MySQL和PostgreSQL
Redis:用于存储用户session和任务,任务包括新建仓库、发送邮件等等
Sidekiq:Rails框架自带的,订阅redis中的任务并执行
搭建流程
1.创建虚拟机
docker-machine create --driver virtualbox --virtualbox-cpu-count 4 --virtualbox-memory 3072 dev-gitlab
2.配置虚拟机的加速器
docker-machine ssh dev-gitlab sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=http://6cade60d.m.daocloud.io |g" /var/lib/boot2docker/profile exit docker-machine restart dev-gitlab
3.下载redis,postgresql,gitlab镜像
docker pull sameersbn/redis docker pull sameersbn/postgresql docker pull sameersbn/gitlab
4.执行上面镜像生成容器( \ 为换行符展现,实际上去掉 \ 一行执行)
# 生成postgresql镜像容器 docker run --name postgresql -d \ -e 'DB_NAME=gitlabhq_production' \ -e 'DB_USER=gitlab' \ -e 'DB_PASS=password' \ -e 'DB_EXTENSION=pg_trgm' \ -v /home/docker/opt/postgresql/data:/var/lib/postgresql \ sameersbn/postgresql
# 生成redis镜像容器 docker run --name redis -d \ -v /home/docker/opt/redis/data:/var/lib/redis \ sameersbn/redis
# 生成redis镜像容器 # 注意: GITLAB_HOST为虚拟机分配的地址 docker run --name gitlab -d \ --link postgresql:postgresql --link redis:redisio \ -p 10022:22 -p 10080:80 \ -e 'GITLAB_PORT=10080' \ -e 'GITLAB_SSH_PORT=10022' \ -e 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' \ -e 'GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string' \ -e 'GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-string' \ -e 'GITLAB_HOST=192.168.99.100' \ -e 'GITLAB_EMAIL=xiahl0916@163.com' \ -e 'SMTP_ENABLED=true' \ -e 'SMTP_DOMAIN=www.163.com' \ -e 'SMTP_HOST=smtp.163.com' \ -e 'SMTP_STARTTLS=false' \ -e 'SMTP_USER=邮箱地址' \ -e 'SMTP_PASS=邮箱密码' \ -e 'SMTP_AUTHENTICATION=login' \ -e 'GITLAB_BACKUP_SCHEDULE=daily' \ -e 'GITLAB_BACKUP_TIME=00:30' \ -v /home/docker/opt/gitlab/data:/home/git/data -m 2048m --memory-swap=-1 \ sameersbn/gitlab
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍centos6搭建gitlab的方法步骤,包括了centos6搭建gitlab的方法步骤的使用技巧和注意事项,需要的朋友参考一下 前言 原来的项目放在公网的gitlab上,处于安全考虑,在内网搭建一套,有图形界面,可以直接从外网git导入进来,使用了一下觉得挺方便,把安装流程记录下来,参考官网:https://gitlab.com/gitlab-org/gitlab-recipes/
本文向大家介绍使用docker搭建gitlab详解,包括了使用docker搭建gitlab详解的使用技巧和注意事项,需要的朋友参考一下 使用docker搭建gitlab 在服务器上直接安装gitlab,会装入Git,Redis ,postgresql,nginx等。如果主机已有redis、nginx等,配置会比较麻烦。而且以后gitlab的备份和迁移都不方便。附主机安装教程: https://ab
本文向大家介绍利用require.js与angular搭建spa应用的方法实例,包括了利用require.js与angular搭建spa应用的方法实例的使用技巧和注意事项,需要的朋友参考一下 前言 AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心
本文向大家介绍Centos7使用docker搭建gitlab服务器,包括了Centos7使用docker搭建gitlab服务器的使用技巧和注意事项,需要的朋友参考一下 了解到docker的优点,搭建快,运行要求资源低,最重要的是实现的功能和效果都能达到预期,于是决定使用docker来搭建gitlab服务器。 效果图如下: 系统环境:CentOS Linux release 7.1.1503 (Co
本文向大家介绍Python搭建FTP服务器的方法示例,包括了Python搭建FTP服务器的方法示例的使用技巧和注意事项,需要的朋友参考一下 Python版本 3.6.2 使用的ftp包:pyftpdlib pip install pyftpdlib就可以下载安装了 FTP协议下载上传文件在文件过大的情况下会比HTTP更具有优势,更为方便的实现断点上传和进度监控,下面是官方文档中的 基本方法
本文向大家介绍基于Kubernetes和Docke实现留言簿案例,包括了基于Kubernetes和Docke实现留言簿案例的使用技巧和注意事项,需要的朋友参考一下 一、介绍 本案例基于Kubernetes和Docker,其中包括 1、web前端 2、redis master 3、redis slave 其中web前端通过javascript redis api和redis master交互 kub