Docker下gitlab及内存优化

1、安装及配置

# gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本
$ docker pull gitlab/gitlab-ce

 2.运行gitlab镜像

$ docker run -d  -p 443:443 -p 80:80 -p 222:22 --privileged=true --name gitlab --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
# -d:后台运行
# -p:将容器内部端口向外映射
# --name:命名容器名称
# -v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录

 

3.配置

按上面的方式,gitlab容器运行没问题,但在gitlab上创建项目的时候,生成项目的URL访问地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,我们需要一个固定的URL访问地址,于是需要配置gitlab.rb(宿主机路径:/home/gitlab/config/gitlab.rb)。

# gitlab.rb文件内容默认全是注释
$ vim /home/gitlab/config/gitlab.rb

 

# 配置http协议所使用的访问地址,不加端口号默认为80
external_url 'http://192.168.199.231'

# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.199.231'
gitlab_rails['gitlab_shell_ssh_port'] = 222 # 此端口是run时22端口映射的222端口
:wq #保存配置文件并退出

 

# 重启gitlab容器
$ docker restart gitlab

 4、访问

输入地址:http://192.168.199.231:80 即可访问

5、安装问题及502、内存不存 优化

5.1 控制gitlab的进程:worker_processes;

百度了一下原来是我的服务器cpu核心数太多了,gitlab建议如果您这台机器只使用与gitlab的话unicorn['worker_processes'] 这个默认是cpu核心数加一,所以开启的进程就会很多,我们只要把这个参数指定一下就好了,编辑配置文件

vim gitlab.rb

去掉下面的注释

unicorn['worker_processes'] = 2

重启:docker restart gitlab

5.2 503问题、解决 tomcat 端口冲突问题:(同时建议4G双核,gitLab比较吃内存)

修改gitlab的配置文件:/home/gitlab/config/gitlab.rb 


unicorn['port']将其修改为不和宿主机冲突的端口号。如下:

 ### Advanced settings
 # unicorn['listen'] = '127.0.0.1'
 unicorn['port'] = 8081

重启:docker restart gitlab

 

你可能感兴趣的:(环境搭建)