lamp自动化部署第三版

#!/bin/bash

#author by martin 2015-07-22

#auto install lamp

function apache_install(){

#apache auto install

echo -e "\033[32m prepare apache env \033[0m"

H_FILE=httpd-2.2.31.tar.gz

H_DIR=httpd-2.2.31

yum install apr apr-util apr-devel apr-util-devel   -y

cd /usr/src

wget  http://mirrors.sohu.com/apache/httpd-2.2.31.tar.gz

tar xf $H_FILE

cd $H_DIR

./configure --prefix=/usr/local/apache2/ --enable-rewrite  --enable-so --with-mpm=worker \

--enable-expires  --enable-deflate  --enable-headers

make && make install

if [ $? -eq 0 ];then

echo "apache install successful"

fi

exit

}

function mysql_install(){

#mysql auto install

echo -e "\033[32m prepare mysql \033[0m"

M_FILE=mysql-5.1.72.tar.gz

M_DIR=mysql-5.1.72

groupadd mysql

useradd -s /sbin/nologin -g mysql -M mysql

cd /usr/src

wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.72.tar.gz

tar xf $M_FILE

cd $M_DIR

./configure --prefix=/usr/local/mysql --enable-assembler  --with-mysqld-user=mysql \

--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock --localstatedir=/usr/local/mysql/data

if [ $? -eq 0 ];then

make &&make install

fi

if [ $? -eq 0 ];then

echo -e "\033[32mmysql install succefull\033[0m"

/bin/cp support-files/my-small.cnf /etc/my.cnf

/bin/cp support-files/mysql.server /etc/init.d/mysqld

chmod +x /etc/init.d/mysqld

cd /usr/local/mysql/

mkdir data

chown mysql.mysql /usr/local/mysql/

./bin/mysql_install_db --user=mysql

exit

fi

}

function php_install(){

#php auto install

echo -e "\033[32m prepare php \033[0m"

P_FILE=php-5.4.22.tar.gz

P_DIR=php-5.4.22

cd /usr/src

wget http://mirrors.sohu.com/php/php-5.4.22.tar.gz

tar xf $P_FILE

cd $P_DIR

./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs \

--with-mysql=/usr/local/mysql/     --enable-sockets

if [ $? -eq 0  ];then

echo -e "\033[32m php install successful\033[0m"

fi

make&&make install

/bin/cp /usr/src/php-5.4.22/php.ini-production /usr/local/php5/lib/php.ini

exit

#lamp整合 auto install

echo -e "\033[32m prepare lamp整合 \033[0m"

if [ $1 -eq 4 ];then

sed -i ‘s#DirectoryIndex index.html#DirectoryIndex index.php index.html#g‘   /usr/local/apache2/conf/httpd.conf

echo "AddType     application/x-httpd-php .php" >>/usr/local/apache2/conf/httpd.conf

cat > /usr/local/apache2/htdocs/index.php<<EOF

<?php

phpinfo();

?>

EOF

fi

}

case $1 in

apache_install)

apache_install

;;

mysql_install)

mysql_install

;;

php_install)

php_install

;;

*)

echo "usge:sh $0 apache_install|mysql_install|php_install"

;;

esac

时间: 2024-12-29 11:37:04

lamp自动化部署第三版的相关文章

SaltStack实战之配置管理-LAMP自动化部署

SaltStack实战之配置管理-LAMP自动化部署 学习 SaltStack SaltStack实战之配置管理-LAMP自动化部署 1. 部署思路 2. 编写lamp.sls 1. 部署思路 将lamp分成3部分:软件包.配置文件.服务: 确认安装的软件包名.配置文件路径.服务名等: 按以上信息编写yaml文件: 2. 编写lamp.sls [[email protected] salt]# pwd/srv/salt[[email protected] salt]# lsdev  init  

LAMP自动化部署

自动化部署的步骤 1.软件包安装 2.配置文件修改 3.服务启动设置 实际完成apache和mysql的安装配置启动过程: 1.设置/etc/salt/master里面file_roots的目录: file_roots: base: - /srv/salt/ dev: - /srv/salt/dev/ test: - /srv/salt/test/ prod: - /srv/salt/prod/ 2.在/srv/salt/目录下新建dev目录,并且在/srv/salt/dev/目录下新建file

salt实现lamp自动化部署

三个文件夹: pkg 安装软件包 file  管理配置文件 service   服务管理 思路: lamp需要安装的软件包有  httpd, php, mysql, mysql-server, php-mysql, php-pdo cd  /srv/salt/dev/ mkdir   /srv/salt/dev/files/      ##放配置文件 vim  /srv/salt/dev/lamp.sls lamp配置文件如下: lamp-pkg-install: pkg.installed:

利用apache+svn+jenkins+maven 实现java环境的自动化构建和部署(三)(网内首发超详细版)

3.3 权限配置样例 注意: * 权限配置文件中出现的用户名必须已在用户配置文件中定义. * 对权限配置文件的修改立即生效,不必重启svn. 用户组格式: [groups] = , 其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔. 版本库目录格式: [<版本库>:/项目/目录] @<用户组名> = <权限> <用户名> = <权限> 其中,方框号内部分可以有多种写法: [/],表示根目录及以下,根目录是svnserve启动时指定的,我们

Ansible自动化部署k8s-1.16.0版集群

Ansible自动化部署k8s二进制集群 Ansible是一种IT自动化工具.它可以配置系统,部署软件以及协调更高级的IT任务,例如持续部署,滚动更新.Ansible适用于管理企业IT基础设施. 这里我通过Ansible来实现Kubernetes v1.16 高可用集群自动部署(离线版) (但是还是需要网络,因为这里需要去部署flannel,coredns,ingress,dashboard插件,需要拉取镜像 Ansible自动化部署k8s-1.16.0版集群介绍 使用ansible自动化部署k

cobbler之自动化部署ubuntu14

概述    本例主要实现通过cobbler,配合seed脚本文件,来自动化安装部署ubunut环境,并安装相应的软件并作相应的基本配置,可以通过此方法来为ceph等大规模集群基础部署. seed文件:Debian ubuntu平台的一种自动化部署配置文件 和kickstart文件功能相同.其实ubuntu也可以使用ks文件,但是只能进行基本的环境配置,不能自定义包的安装和脚本的运行. 实验环境 cobbler-server: 1.1.1.122 centos7.2 ubuntu 客户端:kvm虚

Cobbler自动化部署最佳实践

第1章 Cobbler自动化部署最佳实践 运维自动化在生产环境中占据着举足轻重的地位,尤其是面对几百台,几千台甚至几万台的服务器时,仅仅是安装操作系统,如果不通过自动化来完成,根本是不可想象的. 面对生产环境中不同服务器的需求,该如何实现批量部署多版本的操作系统呢?Cobbler便可以的满足这一实际需求,实现多版本操作系统批量部署. 笔者QQ:572891887 Linux架构交流群:471443208 1.1 Cobbler简介 Cobbler是一个快速网络安装linux的服务,而且在经过调整

DHCP+TFTP+HTTP+kickstart实现PXE自动化部署系统Centos

前提:对DHCP,tftp-server,httpd有一定了结,本文将略过对服务的讲解和安装过程,主要讲通过这三个服务来实现PXE服务器的搭建过程. 准备工作: 安装软件包: 安装制作ks.cfg文件工具(图形界面下):yum-y system-config-kickstart 安装服务:yum -y installdchp tftp-server httpd 安装syslinux:yum -yinstall syslinux 或者使用下面的安装方法一次性全部安装: yum -y install

程序包管理rpm,yum用法解析及自动化部署apache server实战,让您轻松拥有apache网站!

程序包管理器rpm,yum用法及apache httpd服务的自动化部署 程序包管理? 通常来说在windows中将需要安装的程序,程序名.exe下载下来然后点击setup的安装程序或直接点击程序包,下一步下一步即可.而Linux中程序包不是exe,不同的主流发行版有着不同的程序包管理机制.比较主流的主要是rpm程序包管理器和deb程序包管理. 这里要区别: 包名(PACKAGEFILE): rpm包程序文件的全名程序名(PACKAGENAME): rpm包不带版本号的程序名,比如QQ而不是QQ