Walle实现自动发布
walle是啥?能干啥?有啥用?这些我都不会去一一道来,如果你还没有明白前面提出的三个问题就不用往下看了,这里这回将walle安装了怎么去使用.如果都要面面俱到不是一两篇博客可以解决的问题,如果希望将walle部署到生产环境中,这篇博客或许能给你点启发,下面给出的网站完全可以解决前面的几个问题了.直接开始吧.
前期准备
系统centos6.5
walle机器必须先部署LNMP/LAMP环境,这里使用LNMP
gitlab非必须,不会安装嫌麻烦的可以直接使用git或者github
实验之前,先关闭selinux和iptable 源码包自行下载
实验使用3台虚拟机
gitlab机器: node4 192.168.19.140
walle机器: node1 192.168.19.139
模拟部署机器: node5 192.168.19.141三台机器上创建可以免密登录的用户: www
方便实验将主机信息写入hosts文件中,(非必须)
[www@node4 ~]$ cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
:: localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.19.139 node1
10.10.21.131 node2
10.10.23.147 node3
192.168.19.140 node4
192.168.19.141 node5
创建免密登录用户
这里因为本人设置的这几台虚拟机中root的密钥要一致,所以是直接copy了系统中root用户的密钥来实现的,如果你想创建用户只是使用改用户在创建密钥也行
直接copy密钥对方法,三台主机上都要运行
useradd www
mkdir /home/www/.ssh
cp ~/.ssh/authorized_keys /home/www/.ssh
cp ~/.ssh/id_rsa /home/www/.ssh
chown -R www.www /home/www/.ssh
chmod /home/www/.ssh
chmod /home/www/.ssh/*
自行创建密钥对思路
#创建密钥,一路回车就行,具体用法自行man
su - www
ssh-keygen #将密钥copy到需要的主机上, -i 后面跟公钥文件
ssh-copy-id [-i [identity_file]] [user@]machine
walle机器安装LNMP
卸载系统自带应用
rpm -qa | grep php
rpm -qa | grep mysql
rpm -e --nodeps php-common-5.3.-.el6.x86_64
rpm -e --nodeps php-pdo-5.3.-.el6.x86_64
rpm -e --nodeps php-cli-5.3.-.el6.x86_64
rpm -e --nodeps php-xml-5.3.-.el6.x86_64
rpm -e --nodeps php-pear-1.9.-.el6.noarch
rpm -e --nodeps php-gd-5.3.-.el6.x86_64
rpm -e --nodeps php-5.3.-.el6.x86_64
rpm -e --nodeps mysql-5.1.-.el6.x86_64
rpm -e --nodeps mysql-connector-odbc-5.1.5r1144-.el6.x86_64
rpm -e --nodeps mysql-libs-5.1.-.el6.x86_64} #清除了检查一下,确保清除干净
[root@node1 ~]# rpm -qa | grep php
[root@node1 ~]# rpm -qa | grep mysql
[root@node1 ~]#
下载源码包并解压
由于有的源码包链接会随时间推移而失效,这里就不放链接了,自行查找安装下载吧
[root@node1 ~]# cd /usr/local/src/
[root@node1 src]# ls
mysql-5.6..tar.gz php-5.6..tar.gz nginx-1.12.
nginx-1.12..tar.gz walle-web-v1.x-master.zip
tar -zxf mysql-5.6..tar.gz
tar -zxf nginx-1.12..tar.gz
tar -zxf php-5.6..tar.gz
安装依赖环境
这里给出的本人系统上安装时需要用到的,因为系统初始化安装中存在差异如果在源码编译安装报错是请自行安装对应的依赖包
yum -y groupinstall Development tools
yum -y install make gcc-c++ cmake bison-devel ncurses-devel libaio libaio-devel perl-Data-Dumper net-tools
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel libxml2* libmysql*
原文地址:
Walle实现自动发布的更多相关文章
- eclipse项目自动发布到tomcat目录,缺文件。
eclipse项目自动发布到tomcat目录,缺文件. 解决方案: 项目--Properties-->Deployment Assembly-->Add--> Folder Add- ...
- php利用svn hooks将程序自动发布到测试环境
利用svn hooks将php程序自动发布到测试环境 复制仓库hooks目录下的post-commit.tmpl为post-commit cp post-commit.tmpl post-commit ...
- 一键自动发布ipa(更新svn,拷贝资源,压缩资源,加密图片资源,加密数据文件,加密lua脚本,编译代码,ipa签名,上传ftp)
一键自动发布ipa(更新svn,拷贝资源,压缩资源,加密图片资源,加密数据文件,加密lua脚本,编译代码,ipa签名,上传ftp) 程序员的生活要一切自动化,更要幸福^_^. 转载请注明出处http: ...
- [Eclipse] - 集成JBoss7热加载和自动发布
使用Eclipse + JBoss开发时,总是要重启项目或JBoss,烦人.下面方法可以很简单的实现Eclipse + JBoss热加载和自动发布. 我的环境是JBoss 7.1.1 Final 1) ...
- 使用Gradle自动发布Java Web到SAE
博客已迁移,请访问:http://www.huangyunkun.com/ 现在像SAE这类的应用引擎已经比较多了,百度和腾讯都出了这样的东西. 我很早的时候就开始用SAE,当时还为了迁就SAE学习了 ...
- 设置SVN hooks实现自动发布
# CentOS下安装SVN yum -y install subversion svnserve --version cd /home/ mkdir svn cd svn/ /usr/bin/svn ...
- 使用VisualSVN Server自动发布站点
使用VisualSVN Server自动发布站点可以节省大量的发布时间. 适用于项目测试版本 通常一个项目在测试阶段会遇到以下问题 1.开发人员修改缺陷要实时反应到测试环境 2.项目经理想让客户及时看 ...
- 自动发布工具版本从python2升级成python3后遇到的种种问题(涉及paramiko,Crypto,zipfile等等)
从在公司实习到正式入职,一直还在被同事使用的是我写的一个自动发布工具.该工具的主要功能是:开发人员给出需要更新的代码包(zip格式),测试人员将该代码包部署到测服,这些代码包和JIRA数据库里的项目信 ...
- Tomcat 设置自动编译,自动发布,自动部署
Tomcat服务器 具有一个常用的功能: 即自动编译,自动发布,自动部署功能. 问题: 当我们第一次发布程序以后,我们增删改Servelt,Java,.xml等文件,都必须重启Tomcat,如果项目巨 ...
随机推荐
- conda进行python环境隔离
1.环境隔离的问题 在使用python时,常常遇到的问题: pip安装库A,依赖库B-2.1版本 pip安装库C,以来库B-3.1版本,安装会提示库B的版本冲突错误. 这种情况下就需要做环境隔离 co ...
- Spark Streaming反压机制
反压(Back Pressure)机制主要用来解决流处理系统中,处理速度比摄入速度慢的情况.是控制流处理中批次流量过载的有效手段. 1 反压机制原理 Spark Streaming中的反压机制是Spa ...
- C++11 并发编程库
C++11 并发编程 C++11 新标准中引入了几个头文件来支持多线程编程,他们分别是: <atomic>:该头文主要声明了两个类, std::atomic 和 std::atomic_f ...
- qtableview 鼠标划过单元格弹出标签显示单元格内容
QStandardItem *item = new QStandardItem(show_content); infoTableModel->setItem(1, 1, item); item- ...
- Windows删除文件夹下的指定格式文件(递归删除)
问题描述: 今天遇到一个需求,需要对文件夹进行文件筛选.目录结构较为复杂(目录较多,层次较深),数据量较大(总共60GB左右). 鉴于上述情况,直接排除了人工处理方式(否则小伙伴们会打死我的). 解决 ...
- MySQL5.7修改wait_timeout参数
参考:https://blog.csdn.net/ivory_town1/article/details/77702357 1.修改参数配置文件 vi /etc/my.cnf [mysqld] wai ...
- 【视频开发】Gstreamer框架中使用gst-launch进行流媒体播放
Gstreamer框架中使用gst-launch进行流媒体播放 Gstreamer是一套开源的流媒体框架,用其也可以进行流媒体开发,Gstreamer是基于glib库编写的,需要将多个不同功能的元件( ...
- rxjs debounceTime减少搜索的频率
debounceTime用来降低事件的触发频率 ,接收以毫秒为单位的参数 它所做的操作是,在一定时间范围内不管产生了多少事件,它只放第一个过去,剩下的都将舍弃 html: <div class= ...
- K8S+GitLab+.net core-自动化分布式部署-3
K8S+GitLab-自动化分布式部署ASP.NET Core(三) 更新镜像版本并部署到K8S上 一.介绍 前一篇,介绍了ASP.NET Core部署到K8S上,下面介绍我们在发布新一版本中怎么 ...
- python中判断对象类型的函数——isinstance
isinstance是Python中的一个内建函数.是用来判断一个对象的变量类型. isinstance(object, class-or-type-or-tuple) 如果参数object是clas ...