docker中安装GitLab中文社区版
1.拉取镜像
docker pull twang2218/gitlab-ce-zh:10.8.7
注意 gitLab 比较吃内存,至少 2G 运行内存
2.启动gitlab镜像
compose安装:
官方文档: https://docs.docker.com/compose/install/
Linux下操作例:
1.运行以下命令以下载Docker Compose的当前稳定版本:
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
快镜像
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
–要安装其他版本的Compose,请替换
1.25.4
为要使用的Compose版本
2.将可执行权限应用于二进制文件:
sudo chmod +x /usr/local/bin/docker-compose
注意:如果命令
docker-compose
在安装后失败,请检查路径。您也可以创建指向/usr/bin
或路径中任何其他目录的符号链接。
例如:
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
3.测试安装。
$ docker-compose --version
docker-compose version 1.25.4, build 1110ad01
运行容器
# 创建gitlab目录
cd /usr/local
mkdir /docker/gitlab
# 进入gitlab目录
cd /usr/local/docker/gitlab
# 创建docker-compose.yml
vim docker-compose.yml
docker-compose.yml
version: '2'
services:
# gitlab 是自定义命名的
gitlab:
image: 'twang2218/gitlab-ce-zh:10.8.7'
restart: always
hostname: 'gitlab.mesmile.cn'
environment:
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://gitlab.mesmile.cn'
gitlab_rails['time_zone'] = 'Asia/Shanghai'
# 需要配置到 gitlab.rb 中的配置可以在这里配置,每个配置一行,注意缩进。
# 比如下面的电子邮件的配置:
# gitlab_rails['smtp_enable'] = true
# SMTP服务器:smtp.qq.com 这里我使用的事qq邮箱
# gitlab_rails['smtp_address'] = "smtp.qq.com"
# 端口不可以选择 587,保持默认
# gitlab_rails['smtp_port'] = 465
# 你的邮箱账号
# gitlab_rails['smtp_user_name'] = "xxxx@xx.com"
# 授权码,不是密码
# gitlab_rails['smtp_password'] = "password"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = true
# 这里的邮箱账号和上面保持一致
# gitlab_rails['gitlab_email_from'] = 'xxxx@xx.com'
# 这是 ssh 的端口号
gitlab_rails['gitlab_shell_ssh_port'] = 2222
unicorn['port'] = 8888
nginx['listen_port'] = 8089
ports:
- '8089:80'
- '8443:443'
- '2222:22'
volumes:
- /usr/local/docker/gitlab/config:/etc/gitlab
- /usr/local/docker/gitlab/data:/var/opt/gitlab
- /usr/local/docker/gitlab/log:/var/log/gitlab
然后使用命令 docker-compose up -d
来启动,停止服务使用 docker-compose down
访问地址:http:// ip:8080
邮箱设置参考:
3.优化设置
在设置中优化:
4.设置免密登录
在电脑上找到git的安装目录,以下是默认安装目录
C:\Program Files\Git\usr\bin
然后再地址栏 cmd ,然后在命令框中输入以下命令: 邮箱就是在gitlab上的登录邮箱
ssh-keygen -t rsa -C "your_email@example.com"
然后在用户目录下
C:\Users\SuperZheng\.ssh
找到生成的公钥文件,复制里面的内容
cat id_rsa.pub
然后在gitlab上设置:
用户目录下
C:\Users\SuperZheng\.ssh
找到生成的公钥文件,复制里面的内容
cat id_rsa.pub
然后在gitlab上设置:
[外链图片转存中…(img-Qhjj8pPY-1584203999006)]
注意:**因为我做了docker数据卷映射在本地的/usr/local/docker/gitlab/config
目录中,所以只需要修改config/gitlab.rb
的参数即可。
1、减少进程数
修改配置文件
gitlab.rb
中的worker_processes
:
unicorn['worker_processes'] = 2
默认是被注释掉的,官方建议该值是CPU核心数加一,可以提高服务器的响应速度,如果内存只有4G,或者服务器上有其它业务,就不要改了,以免内存不足。另外,这个参数最小值是2,设为1,服务器可能会卡死。
2、减少数据库缓存
默认为256MB,可适当改小
postgresql['shared_buffers'] = "256MB"
3、减少数据库并发数
默认为8,可适当改小
postgresql['max_worker_processes'] = 8
4、减少sidekiq并发数
默认是25,可适当改小
sidekiq['concurrency'] = 25
5、重启服务
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart