Centos使用docker搭建gitlab服务器

在开始之前请先熟悉docker命令,可参考https://www.runoob.com/docker/docker-command-manual.html

 

一. 安装docker并启动

安装:

sudo yum -y install docker

启动:

sudo systemctl start docker

开机启动:

sudo systemctl enable docker

二.拉取镜像文件

docker images #查看镜像文件,没拉取之前是没有任何镜像的

docker search gitlab #搜索镜像

下载第一个镜像,并等待完成。

docker pull docker.io/gitlab/gitlab-ce

创建容器及启动

# 启动
docker run --name gitlab -d -p 22443:443 -p 2280:80 -p 2222:22 --restart always --memory 4g --volume /srv/gitlab/config:/etc/gitlab --volume  /srv/gitlab/logs:/var/log/gitlab --volume /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest

注释:

  --name:为容器指定一个名称;

  -d:后台运行容器,并返回容器ID;

  -p:指定映射端口号,本文是将ssh的22端口映射为2222端口,web访问的http2280端口映射为80端口,,web访问的https22443端口映射为443端口(端口不冲突可以不映射, 如果配置了https, 需要导入证书)

  --memory 限制容器最大内存暂用4G, 这是官方推荐的(可以不设置)

  --volume: 用来指定挂载目录,将config配置目录、data数据目录、logs日志目录挂载到宿主机上,以后备份方便

三. 修改配置文件并重启

邮箱配置可参考https://docs.gitlab.com/omnibus/settings/smtp.html

# 打开挂载的配置目录
vi /srv/gitlab/config/gitlab.rb

###################################################
# 添加外部请求的域名(如果不支持https, 可以改成http)
external_url 'https://192.168.32.200'

# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.32.200'
gitlab_rails['gitlab_shell_ssh_port'] = 2222

# 修改gitlab对应的时区 
gitlab_rails['time_zone'] = 'PRC'

# gitlab发言人
user['git_user_name'] = "wxyz"
user['git_user_email'] = "wxyz@wxyztech.com"
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'xxxxxx@wxyztech.com'
gitlab_rails['gitlab_email_display_name'] = 'WXYZ GitLab'
# 通过smtp方式发邮件
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
# 邮箱账户密码
gitlab_rails['smtp_user_name'] = "xxxxxx@wxyztech.com"
gitlab_rails['smtp_password'] = "xxxxxx"
gitlab_rails['smtp_domain'] = "exmail.qq.com"

gitlab_rails['smtp_authentication'] = "plain"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true        
###################################################

(选配) 如果配置了https, 需要导入证书,证书生成可参考https://www.cnblogs.com/xieshuang/p/8488458.html

# 进入挂载配置目录
cd /srv/gitlab/config
# 创建密钥文件夹, 并放入证书
mkdir ssl

(选配,如果想使用与宿主机独立的ip地址,注意修改配置文件的对于ip)设置网络IP,使用pipwork

pipework br0 gitlab-ce 192.169.32.201/24@192.168.32.1

重启服务

# 方法一: 重启容器(其中xxxxxx是容器id或name)
docker restart xxxxxx

# 方法二: 登陆容器, 重启配置
docker exec -it  xxxxxx bash   
gitlab-ctl reconfigure

附录:删除容器

1)首先需要停止所有的容器

docker stop $(docker ps -a -q)

2)删除所有的容器(只删除单个时把后面的变量改为image id即可)

docker rm $(docker ps -a -q)

相关文档地址

镜像地址 https://hub.docker.com/r/gitlab/gitlab-ce
容器启动 https://docs.gitlab.com/omnibus/docker

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值