一、gitlab安装

环境:centos 7 x64

1、关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

2、禁用selinux

vim /etc/selinux/config 

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of three values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted 改为SELINUX=disabled,然后重启服务器,使用getenforce进行验证

3、安装环境依赖

yum install curl policycoreutils openssh-server openssh-clients postfix

4、下载仓库文件

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

5、启动邮件服务

systemctl start postfix
systemctl enable postfix

6、安装gitlab-ce

yum install -y gitlab-ce

7、配置ssl

mkdir /etc/gitlab/ssl
cd /etc/gitlab/ssl
openssl genrsa -out /etc/gitlab/ssl/gitlab.example.com.key
openssl req -new -key "gitlab.example.com.key" -out "gitlab.example.com.csr"
openssl x509 -req -days -in "gitlab.example.com.csr" -signkey "gitlab.example.com.key" -out "gitlab.example.com.crt"
openssl dhparam -out dhparams.pem
chmod *

8、配置gitlab.rb

vim /etc/gitlab/gitlab.rb

external_url 'https://gitlab.example.com'
//external_url 'https://192.168.71.128'
nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.example.com.crt" nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.example.com.key" nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem" # Path to dhparams.pem, eg. /etc/gitlab/ssl/dhparams.pem

gitlab-ctl reconfigure

9、配置nginx

server {
listen *:;
server_name gitlab.example.com;
//server_name 192.168.71.128; rewrite ^(.*)$ https://$host$1 permanent; server_tokens off; ## Don't show the nginx version number, a security best practice

10、运维工程师使用

a、新建项目

b、用户维护,创建regular用户

c、给项目分配用户及权限,分配dev用户和maintainer用户

11、开发组长使用

//克隆仓库

git -c http.sslverify=false clone https://192.168.71.128/root/test-repo.git

处理合并申请

12、开发人员使用

git -c http.sslverify=false clone https://192.168.71.128/root/test-repo.git

创建分支合并申请

二、ansible安装

1、环境准备(python3.6.5安装及virtualenvwrapper管理虚拟环境)

详见:https://www.cnblogs.com/hougang/p/11423083.html

2、pip安装

mkvirtualenv -p python3 env36
pip install ansible

3、git安装

root用户安装git
yum -y install git nss curl 切换到普通用户
su deploy
cd ~ git clone ansible(可以将github源导入码云,然后再clone码云上的ansible,不然下载会很慢或失败)
git clone https://github.com/ansible/ansible.git 进入env36环境
workon env36 安装ansible依赖包
pip install paramiko PyYAML jinja2 将ansible移动到虚环境目录下
mv ansible ~/.virtualenvs/env36.ansible/
cd ~/.virtualenvs/env36.ansible/ansible 切换分支
git checkout stable-2.5 安装
source ~/.virtualenvs/env36.ansible/ansible/hacking/env-setup -q 验证
ansible --version

3、ansible使用

ansible主机:192.168.71.132

ssh-keygen -t rsa

ssh-copy-id -i id_rsa.pub root@192.168.71.133

测试机:192.168.71.133

Jenkins+Ansible+Gitlab自动化部署三剑客的更多相关文章

  1. Jenkins+Ansible+Gitlab自动化部署三剑客-Ansible本地搭建

    可以通过git bash连接linux 关闭防火墙,禁用防火墙开机启动,并更爱selinux文件,重启 重新登录并检查禁用 getenforce 安装git yum -y install git ns ...

  2. Jenkins+Ansible+Gitlab自动化部署三剑客-gitlab本地搭建

    实际操作 准备linux初始环境 关闭防火墙 systemctl stop firewalld 开机自己关闭 systemctl disable firewalld 设置安全配置 为关闭 vim /e ...

  3. Jenkins+Ansible+Gitlab自动化部署三剑客-Jenkins本地搭建

    后面需要shell基础,目前没有,等有了,再更

  4. Jenkins Ansible GitLab 自动化部署

    Jenkins Ansible GitLab 自动化部署 DevOps https://www.cnblogs.com/yangjianbo/articles/10393765.html https: ...

  5. Jenkins+maven+gitlab自动化部署之基础环境部署(一)

    从一个二线城市,来到上海,刚入职,老大就给任务,为了减少开发打包部署时间,需要搭建一套自动化部署环境.接到任务后,赶紧上网查找资料,以及了解jenkins作用等等,用了一周时间,了解了个大概,由于都是 ...

  6. Jenkins+maven+gitlab自动化部署之docker发布sprint boot项目(七)

    Jenkins发布docker应用与发布java应用配置基本一致,需要配置Dockerfile及构建的步骤,步骤如下: 1.jenkins主机构建应用为jar包 2.jenkins主机把生产的jar包 ...

  7. Jenkins+maven+gitlab自动化部署之前端构建发布(六)

    前端项目构建,需要在jenkins主机部署node服务,网上有说介绍说安装对应的nodejs插件进行前端项目构建,我这里是直接调用系统npm命令,进行前端打包.具体node部署参考:Centos7部署 ...

  8. Jenkins+maven+gitlab自动化部署之构建Java应用(五)

    前面几篇文章介绍jenkins部署以及配置,接下来我们,就介绍下如何使用jenkins发布应用. 1)新建项目 jenkins首页,点击左上新建任务,出现下图,填写对应信息,然后点击确定: 2)项目参 ...

  9. Jenkins+maven+gitlab自动化部署之Jenkins部署(三)

    本章开始正式搭建Jenkins: 公司现在使用的jenkins版本是2.150.3,但是本次实验安装的版本我们选择最新的 2.164.3(当然,当你阅读这篇文章时,此版本已经不是最新),jenkins ...

随机推荐

  1. EasyUi Datagrid中footer renderFooter

    默认的'rowStyler' 选项不支持footer,想让footer支持rowStyler的话,dategird就得重写.代码如下. var myview = $.extend({}, $.fn.d ...

  2. Oracle 连接排序

    ---左联操作SELECT e.* FROM hs_opt_ewb e left join hs_workform_main m on e.ewb_no=m.ewb_nowhere e.ewb_no= ...

  3. Linux命令之nano(简单文本编辑器)

    nano 字符终端文本编辑器 补充说明 nano 是一个字符终端的文本编辑器,有点像DOS下的editor程序.它比vi/vim要简单得多,比较适合Linux初学者使用.某些Linux发行版的默认编辑 ...

  4. idea如何打开右侧工具栏

  5. enum枚举变量

    如果一个变量你需要几种可能存在的值,那么就可以被定义成为枚举类型.之所以叫枚举就是说将变量或者叫对象可能存在的情况也可以说是可能的值一一例举出来. 一个铅笔盒中有一支笔,但在没有打开之前你并不知道它是 ...

  6. Java8-Stream-No.09

    import java.util.Arrays; public class Streams9 { public static void main(String[] args) { Arrays.asL ...

  7. mysql5.7备份

    一.备份准备&备份测试 1.备份目录准备 #mysql专用目录 mkdir /mysql #mysql备份目录 mkdir /mysql/backup #mysql备份脚本 mkdir /my ...

  8. 【线性代数】2-1:解方程组(Ax=b)

    title: [线性代数]2-1:解方程组(Ax=b) toc: true categories: Mathematic Linear Algebra date: 2017-08-31 15:08:3 ...

  9. Python基础之基本数据类型的总结

    基本数据类型的总结 1. 按照存储空间的占用分(从低到高) 数字 字符串 集合:无序,即无序存索引相关信息 元组:有序,需要存索引相关信息,不可变 列表:有序,需要存索引相关信息,可变,需要处理数据的 ...

  10. LVS集群之IP TUN模式以及网站压力测试

    今天来看一下LVS的第三种模式IP TUN. TUN方式,是通过给数据包加上新的IP头部来实现,这个可以跨整个广域网. 环境: 主机名 IP 系统 角色 tiandong63 RIP:192.168. ...