Docker(3) 源码仓库gitlab的搭建

1. 下载镜像

sudo docker pull gitlab/gitlab-ce:latest

Docker官方镜像网站部署在外网,因此我们国内下载比较慢,一般会使用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.conf
server {
  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;
  }
}

猜你喜欢

转载自blog.csdn.net/shgh_2004/article/details/80439457