微服务轮子项目(44) -GitLab代码仓库

简介: 微服务轮子项目(44) -GitLab代码仓库

1. 安装部署

1.1下载镜像

docker pull gitlab/gitlab-ce

1.2 运行GitLab容器

docker run --detach \
           --publish 8443:443 \
           --publish 8480:80 \
           --publish 2222:22 \
           --name gitlab \
           gitlab/gitlab-ce:latest

1.3 拷贝配置文件

docker cp  gitlab:/etc/gitlab/ /opt/gitlab/config/

1.4 修改gitlab配置

vim /opt/gitlab/config/gitlab.rb

1.修改邮箱配置:

### Email Settings
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'xxx@163.com'
gitlab_rails['gitlab_email_display_name'] = 'zlt'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxx@163.com"
gitlab_rails['smtp_password'] = "客户端授权密码"
gitlab_rails['smtp_domain'] = "smtp.163.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

2.设置外部url

external_url 'http://192.168.28.134:8480'

3.如果ssh端口不是22需要修改端口配置

gitlab_rails['gitlab_shell_ssh_port'] = 2222

1.5 创建启动文件

vim start.sh
#!/bin/bash
GITLAB_DIR=/opt/gitlab
docker stop gitlab
docker rm gitlab
docker run -d \
    -p 8443:443 -p 8480:8480 -p 2222:22 \
    --name gitlab \
    -v ${GITLAB_DIR}/config:/etc/gitlab \
    -v ${GITLAB_DIR}/logs:/var/log/gitlab \
    -v ${GITLAB_DIR}/data:/var/opt/gitlab \
    --privileged=true \
    gitlab/gitlab-ce:latest

修改HOST_NAME为自己喜欢的名字

GITLAB_DIR为挂载目录要修改为自己的目录

重新启动容器

sh start.sh

2. 免密访问

gitlab里面添加了ssh key之后,以后本地pull/push就不需要登录了

2.1 获取本地客户端机器的公钥

1.先看看是不是已经有了,如果有内容就直接copy贴过去

cat ~/.ssh/id_rsa.pub

2.如果上一步没有这个文件我们就创建一个,运行下面命令生成(邮箱改成自己的),一路回车就好了

ssh-keygen -t rsa -C "youremail@example.com"
cat ~/.ssh/id_rsa.pub

3.复制公钥内容

2.2 添加ssh key

1.打开ssh key页面Settings -> SSH Keys:

2.将上面第一步复制的公钥内容粘贴到里面点击Add key

3. webhook配置

  • webhoo是一种web回调或者http的push API,是向APP或者其他应用提供实时信息的一种方式。
  • 一般是需要通过git的某些行为触发jenkins构建使用
  • 如果只需要手动构建的话可以忽略webhook

3.1 配置触发

1.打开webhoo页面项目详情页面 -> Settings ->Integrations

2.URLjenkinsjob构建地址加token参数

3.jenkinstoken配置如下图

4.Trigger为触发的行为,默认是Push操作

5.增加webhook

6.可以通过test按钮测试触发器

3.2 webhook报错 Requests to the local network are not allowed

原因是gitlab 10.6 版本以后为了安全,不允许向本地网络发送webhook请求,如果想向本地网络发送webhook请求,则需要使用管理员帐号登录,默认管理员帐号是admin@example.com,密码就是你gitlab搭建好之后第一次输入的密码,登录之后, 点击Configure Gitlab ,如下图所示:

即可进入Admin area,在Admin area中,在settings标签下面,找到OutBound Request,勾选上Allow requests to the local network from hooks and services ,保存更改即可解决问题:

目录
相关文章
|
1月前
IDEA第一次上传项目到gitlab
IDEA第一次上传项目到gitlab步骤
|
1月前
|
Dubbo Java 应用服务中间件
微服务框架(十)Maven Archetype制作Dubbo项目原型
  此系列文章将会描述Java框架Spring Boot、服务治理框架Dubbo、应用容器引擎Docker,及使用Spring Boot集成Dubbo、Mybatis等开源框架,其中穿插着Spring Boot中日志切面等技术的实现,然后通过gitlab-CI以持续集成为Docker镜像。   本文为Maven Archetype的制作及使用,使用archetype插件制作Dubbo项目原型
|
24天前
|
JavaScript Java 应用服务中间件
用白薅来的gitlab自带的gitlab-runner部署一个vue项目
用白薅来的gitlab自带的gitlab-runner部署一个vue项目
25 2
|
1月前
|
微服务
jeecg微服务项目调用接口报错Token验证失效的解决方法
jeecg微服务项目调用接口报错Token验证失效的解决方法
|
1月前
|
jenkins 持续交付 开发工具
【gitlab】旧的gitlab项目迁移新的gitlab
【gitlab】旧的gitlab项目迁移新的gitlab
121 0
|
1月前
|
SpringCloudAlibaba Java 持续交付
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
297 0
|
24天前
|
缓存 Kubernetes Linux
CentOS 7上的GitLab Runner,让你的项目加速奔跑
CentOS 7上的GitLab Runner,让你的项目加速奔跑
40 1
|
1月前
|
开发工具 git
修改GitLab项目文件路径重新刷新配置报错问题原因及解决方案
修改GitLab项目文件路径重新刷新配置报错问题原因及解决方案
35 0
|
1月前
|
监控 数据可视化 安全
智慧工地SaaS可视化平台源码,PC端+APP端,支持二开,项目使用,微服务+Java++vue+mysql
环境实时数据、动态监测报警,实时监控施工环境状态,有针对性地预防施工过程中的环境污染问题,打造文明生态施工,创造绿色的生态环境。
31 0
智慧工地SaaS可视化平台源码,PC端+APP端,支持二开,项目使用,微服务+Java++vue+mysql
|
1月前
|
Java Maven 微服务
微服务项目-将普通文件夹设为模块与添加services窗口
微服务项目-将普通文件夹设为模块与添加services窗口
14 0