1. 下载镜像
sudo docker pull gitlab/gitlab-ce:latestDocker官方镜像网站部署在外网,因此我们国内下载比较慢,一般会使用Docker加速服务。这里使用的是阿里云。
注册阿里云账户,获取阿里云加速地址。具体配置如下:
vi /etc/docker/daemon.json
{
"registry-mirrors": ["<your accelerate address>"]
}
2. 启动Gitlab
这里方便使用,制作启动脚本(gitlab.sh)echo "restart gitlab..."
docker stop gitlab && echo "停止服务成功!" || echo "停止服务失败!"
docker rm gitlab && echo "销毁服务成功!" || echo "销毁服务失败!"
docker run --detach \
--hostname gitlab.weipaiku.com \
--publish 9443:443 --publish 9080:80 --publish 9022:22 \
--name gitlab \
--restart always \
--volume /home/docker/gitlab/config:/etc/gitlab \
--volume /home/docker/gitlab/logs:/var/log/gitlab \
--volume /home/docker/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
这里里面映射了:配置目录,日志目录,数据存储目录
3.配置Gitlab
a) 设置初始密码访问gitlab.weipaiku.com, 直接提示你修改密码
b) 配置更多
/etc/gitlab/gitlab.rb 这里我们已经映射出来了。在宿主机上就可以配置。
具体参照:https://docs.gitlab.com/omnibus/settings/configuration.html
4. 集成使用nginx做代理(这边有需要就做)
vi gitlab.confserver {
listen 80;
server_name gitlab.yaok.com;
# disable any limits to avoid HTTP 413 for large image uploads
client_max_body_size 0;
# required to avoid HTTP 411: see Issue #1486 (https://github.com/docker/docker/issues/1486)
chunked_transfer_encoding on;
location / {
proxy_pass http://192.168.0.210:9080;
proxy_set_header Host $http_host; # required for docker client's sake
proxy_set_header X-Real-IP $remote_addr; # pass on real client's IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 900;
}
}