首先需要安装Docker。
Ubuntu安装Docker(官方文档翻译):http://www.linuxdiyf.com/linux/25739.html
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.5-3
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=long-and-random-alpha-numeric-string' \
--env 'GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string' \
--env 'GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-string' \
--volume /srv/docker/gitlab/gitlab:/home/git/data \
sameersbn/gitlab:8.14.0
由于dockerhub的镜像非常慢,我们这里改一下使用灵雀云的镜像(就是改了一下镜像名和版本),虽然版本可能会跟不上最新的,但是速度快多了(实际上也不怎么快,我用了两个小时下载。)
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 \
index.alauda.cn/sameersbn/postgresql
docker run --name gitlab-redis -d \
--volume /srv/docker/gitlab/redis:/var/lib/redis \
index.alauda.cn/sameersbn/redis:latest
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=long-and-random-alpha-numeric-string' \
--env 'GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string' \
--env 'GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-string' \
--volume /srv/docker/gitlab/gitlab:/home/git/data \
index.alauda.cn/sameersbn/gitlab:latest
浏览器访问http://localhost:10080设置root密码,密码不能少于8个字符,最开始可能会出现502的界面,刷新几次就好了。
放几张安装成功到截图:
灵雀云上最新的版本是8.8.5,github上最新的是8.14.0
如果重启了电脑,你可以通过下面的方式重启gitlab
docker restart gitlab-postgresql
docker restart gitlab-redis
docker restart gitlab
重启并没有丢失数据,因为--volume挂载卷命令将数据保存到了本地
常用命令
docker ps #查看容器
docker ps -a #查看所有容器,包括已经停止的。
docker ps -l #查看正在运行的容器
docker rm [容器名或容器ID] #删除单个容器
#停止、启动、杀死、重启一个容器
docker stop [容器名或容器ID]
docker start [容器名或容器ID]
docker kill [容器名或容器ID]
docker restart [容器名或容器ID]
域名问题
在启动gitlab时可以通过环境变量GITLAB_HOST指定
--env 'GITLAB_HOST=gitlab.example.com' \