题记
gitlab,大家都耳熟能详了,git的好处这里不多说,用过的都说好。gitlab在Linux下npm直接安装使用也很方便,这篇文章是使用基于docker的gitlab社区版,属于个人实践学习docker的又一例子。
Linux环境
Ubuntu 16.04(LTS)
使用版本
# docker pull sameersbn/gitlab(latest版本,740多兆啊)
# docker pull sameersbn/redis:latest
# docker pull sameersbn/postgresql:9.4-21
生成密钥
# pwgen -Bsv1 64 (如果没有,安装一下即可:apt-get install pwgen)
qKPjnnmFtnWVPc4tPvmWddjhRwxdzfmKXtRcjt9cJsCXXqHwzmVcCCHbsNH434s7
方式1:手动运行 Docker 服务
1.首先运行postgresql数据库镜像
# docker run --name gitlab-postgresql -d \
--env 'DB_NAME=gitlabhq_production' \
--env 'DB_USER=gitlab' --env 'DB_PASS=password' \
--env 'DB_EXTENSION=pg_trgm' \
--volume /srv/docker/gitlab/postgresql:/var/lib/postgresql \
sameersbn/postgresql:9.4-21
2.运行redis镜像
# docker run --name gitlab-redis -d \
--volume /srv/docker/gitlab/redis:/var/lib/redis \
sameersbn/redis:latest
3. 最后运行gitlab镜像
# docker run --name gitlab -d \
--link gitlab-postgresql:postgresql --link gitlab-redis:redisio \
--publish 10022:22 --publish 10080:80 \
--env 'GITLAB_PORT=10080' --env 'GITLAB_SSH_PORT=10022' \
--env 'GITLAB_SECRETS_DB_KEY_BASE=你自己的密钥' \
--volume /srv/docker/gitlab/gitlab:/home/git/data \
sameersbn/gitlab:latest
完成。
使用http://localhost:10080访问
name:root
password:第一次登陆设置
方式2:使用 Docker-Compose 运行服务
1.安装docker-compose
不要直接apt-get install安装,有坑,正确安装请看 Ubuntu下安装Docker-Compose:http://www.linuxdiyf.com/linux/21222.html。
2.下载yml配置文件
# wget https://raw.githubusercontent.com/sameersbn/docker-gitlab/master/docker-compose.yml
这里有两个坑要注意:
1、文件里的gitlab镜像行写的是8.8.2,如果你是用的latest或其他版本的话,要修改成对应版本;
2、docker-compose的版本要高于1.5.2,否则会报错不支持 'version 2' 和 depends_on。这就是前面说的直接用apt-get埋下的坑。
3.设置全局变量。前面生成了密钥,这里设置一下即可。
# vi /etc/environment
GITLAB_SECRETS_DB_KEY_BASE=
qKPjnnmFtnWVPc4tPvmWddjhRwxdzfmKXtRcjt9cJsCXXqHwzmVcCCHbsNH434s7
# source /etc/environment
# echo $GITLAB_SECRETS_DB_KEY_BASE
qKPjnnmFtnWVPc4tPvmWddjhRwxdzfmKXtRcjt9cJsCXXqHwzmVcCCHbsNH434s7
4.启动:
# docker-compose up
这种方式,ctrl+c 就会中断,建议使用后台进程方式运行
4-a.后台运行:
# docker-compose up -d
完成。
使用http://localhost:10080访问
name:root
password:第一次登陆设置