fabric本地一键部署LAMP
一、添加普通用户jeff执行sudo时无需输入密码
$ sudo vim /etc/sudoers
--------------------------------------->
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
jeff ALL=(ALL) NOPASSWD: ALL
二、安装fabric
$ sudo yum install epel-release -y
$ sudo yum install python-pip -y && sudo pip install --upgrade pip
$ sudo pip install fabric
三、创建文件index.php
vim /home/jeff/index.php
---------------------------------------->
<?php
phpinfo()
?>
四、创建自动化安装脚本auto_install_lamp.py
$ vim anto_install_lamp.py
----------------------------------------->
#!/usr/bin/env python from fabric.colors import *
from fabric.api import * env.user = 'root'
env.roledefs = {
'node1': ['127.0.0.1']
}
env.password = 'redhat' @roles('node1')
def lamptask():
print yellow("Auto install LAMP ...")
with settings(warn_only=True):
# 以下run全部左对齐
run("yum install httpd -y")
run("yum groupinstall mariadb -y")
run("yum install pcre gcc-c++ zlib* php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml* php-mbstring php-bcmath php-mhash -y")
local('sudo cp /home/jeff/index.php /var/www/html/')
run("systemctl start mariadb")
run("systemctl enable mariadb")
run("systemctl start httpd")
run("systemctl enable httpd") def deploy():
execute(lamptask)
五、执行脚本
$ fab -f auto_install_lamp.py deploy
六、浏览器查看结果: http://10.0.0.20 //此处的10.0.0.20为我设置的本机IP
fabric本地一键部署LAMP的更多相关文章
- 一键部署lamp 脚本
一键部署lamp 脚本 如下: #!/bin/bash systemctl stop firewalld systemctl disable firewalld setenforce 0 #----- ...
- 【Spring Boot】Spring Boot之使用Alibaba Cloud Toolkit(Idea插件)本地一键部署Spring Boot项目到远程服务器
一.Alibaba Cloud Toolkit(Idea插件)的安装 1)Alibaba Cloud Toolkit 介绍 Cloud Toolkit 是本地 IDE 插件,帮助开发者更高效地开发.测 ...
- Service Fabric本地开发部署修改数据目录
以修改5节点非安全模式为例: 在C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup\NonSecure\FiveNode目录下,修改 ...
- ansible一键部署LAMP
一.实现ansible跟节点间无密码访问,不会配置的请看 文章 . 二.创建目录 $ mkdir -p playbooks/{files,templates} 三.创建php测试文件index.p ...
- 一键部署lamp脚本
#!/bin/bash systemctl stop firewalld systemctl disable firewalld setenforce 0 #-------Apache------ # ...
- LAMP 一键部署
LAMP 一键部署 部署http #!/bin/bash ### global variables export lamp_repo=http://192.168.1.5/lamp/ export l ...
- 使用vagrant一键部署本地php开发环境(一)
一:我们为什么需要用这玩意 我们在开发中经常会面临的问题:环境不一致,有人用Mac有人用Windos还有几个用linux的,而我们的服务器都是linux. 在我本地是可以的啊,我测了都,没有问题 ...
- 使用vagrant一键部署本地php开发环境(二)制作自己的vagrant box
在上篇的基础上 ,我们已经安装好了virtualbox和vagrant,没有安装的话,参照上篇 使用vagrant一键部署本地php开发环境(一) 1.从网易镜像或阿里等等镜像下载Centos7 ht ...
- 云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2 ,Apache版本:2.4.23, Mysql 版本:5.7.17 , Php版本:7.0.12)
云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2) 部署 LAMP (CentOS 7.2) 文档提供方:上海驻云信息科技有限公司 更新时间:2017-06 ...
随机推荐
- 在centos7下安装java8和mysql
一般学习java和部署项目都是在本地部署,但是生产环境一般都是在linux环境下,部署和安装环境都是在控制台下进行操作的,没有windows的可视化的操作界面,对与linux的命令掌握和操作对小白来说 ...
- 如何在JavaScript中手动创建类数组对象
前言 关于什么是js的类数组对象这里不再赘述.可以参考这个链接,还有这里. js中类数组对象很多,概念简单的讲就是看上去像数组,又不是数组,可以使用数字下标方式访问又没有数组方法. 例: argume ...
- ESET Smart Security – 免费90天(sv)
Eset 活动很多,还有beta测试,几乎可以免费使用Eset.萨尔瓦多.免费活动,3个月免费ESS/EAV活动地址: 点此进入 填写表格,给你免费3个月的 ESS\EAV 许可证.官方网站: 点此 ...
- Android sdk 更新后编译不过,【Could not find com.android.sdklib.build.ApkBuilderMain】
最近更新了Android sdk,发现编译不过了 解决方案: 进入 sdk/tool/lib/ 目录下,看看有没有 sdklib.jar 这个文件,如果没有看看有没有sdklib-25.*.*.jar ...
- 常用Mysql存储引擎--InnoDB和MyISAM简单总结
常用Mysql存储引擎--InnoDB和MyISAM简单总结 2013-04-19 10:21:52| 分类: CCST|举报|字号 订阅 MySQL服务器采用了模块化风格,各部分之间保持相 ...
- 5.5修改xadmin的头部底部和导航栏名称
1.修改xadmin的头部标题和底部信息: 在users模块中的adminx.py中添加修改函数: from xadmin import views class GlobalSettings(obje ...
- c++ int 转 string 实现前缀补0
最近需要读取一些格式化路径的文件.路径文件名字最后是数字从0开始到100结束,但是占了4位,即0000到0100这样. 需要将int转成string的同时加上前缀0. 方法一: 用sprintf()函 ...
- Convex 一道阿姆斯特朗回旋好题
2001年5月8日,阿姆斯特朗(Armstrong, 1929-2013) 教授发明了一种名为“阿姆斯特朗回旋加速喷气式阿姆斯特朗加密”的加密算法,算法从未公开,直至2013阿姆斯特朗教授逝世后,其生 ...
- soql取第一件数据
User u = [select ID,Name from User Limit 1];
- Reusing & Composing GraphQL APIs with GraphQL Bindings
With GraphQL bindings you can embed existing GraphQL APIs into your GraphQL server. In previous blog ...