zoukankan      html  css  js  c++  java
  • GDSM自动化部署shell脚本

    从0部署

    #!/bin/bash
    
    #安装SDK
    InstallSDK()
    {
    	rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
    	yum -y update
    	yum -y install dotnet-sdk-2.1
    	ln -s ~/dotnet/dotnet /usr/local/bin
    	dotnet --version
    
    	mkdir /home/Documents
    	mv NETCore /home/Documents
    	chmod 777 /home/Documents/NETCore/wwwroot/Centos.sh
    	chmod 777 /home/Documents/NETCore/wwwroot/Date.sh
    }
    #安装mysql
    InstallMysql()
    {
    	mariadb=`rpm -qa | grep mariadb` #执行指令用反引号
    	if [ $mariadb ]; then
    		rpm -e $mariadb --nodeps
    	fi
    	yum -y install wget
    	#mkdir -p /root/Downloads
    	#cd /root/Downloads
    	#wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar -O /root/Downloads/mysql.tar	
    	tar -xvf mysql.tar
    	common=`find . -name "mysql-community-common*"`
    	libs=`find . -name "mysql-community-libs-8*"`
    	client=`find . -name "mysql-community-client*"`
    	server=`find . -name "mysql-community-server*"`
    	rpm -ivh $common
    	rpm -ivh $libs
    	rpm -ivh $client
    	rpm -ivh $server
    	mysqld --initialize
    	chown mysql:mysql /var/lib/mysql -R
    	systemctl start mysqld.service
    	systemctl enable mysqld
    }
    #安装Iptables
    InstallIptables()
    {
    	#关闭firewalld防火墙
    	systemctl stop firewalld.service
    	systemctl disable firewalld.service
    	systemctl mask firewalld.service
    	#安装iptables
    	yum -y install iptables-services
    	systemctl enable iptables
    	systemctl start iptables
    
    	iptables="/etc/sysconfig/iptables"
    	sed -i '/COMMIT/d' "$iptables"
    	sed -i '/--dport 80 -j/d' "$iptables"
    	sed -i '/--dport 3306/d' "$iptables"
    	sed -i '/--dport 443/d' "$iptables"
    	sed -i '/--dport 8080/d' "$iptables"
    	sed -i '/--dport 8090/d' "$iptables"
    
    	echo "-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT">>$iptables
    	echo "-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT">>$iptables
    	echo "-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT">>$iptables
    	echo "-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT">>$iptables
    	echo "-A INPUT -m state --state NEW -m tcp -p tcp --dport 8090 -j ACCEPT">>$iptables
    	echo "COMMIT">>$iptables
    
    	systemctl restart iptables.service
    	systemctl enable iptables.service
    }
    #安装nginx
    Installnginx()
    {
    	yum -y install epel-release
    	yum -y install nginx
    	systemctl start nginx
    	systemctl enable nginx
    	cp -f nginx.conf /etc/nginx/nginx.conf
    	cp -f nx_netcore.conf /etc/nginx/conf.d
    	nginx -s reload
    }
    #安装supervisor
    InstallSupervisor()
    {
    	yum -y install python-setuptools
    	easy_install supervisor
    	mkdir /etc/supervisor
    	echo_supervisord_conf > /etc/supervisor/supervisord.conf
    	echo "[include]">>/etc/supervisor/supervisord.conf
    	echo "files = /etc/supervisor/conf.d/*.conf">>/etc/supervisor/supervisord.conf
    	mkdir /etc/supervisor/conf.d
    	mkdir /etc/supervisor/log
    	cp -f netcore.conf /etc/supervisor/conf.d
    	supervisord -c /etc/supervisor/supervisord.conf
    	
    	cp -f supervisord.service /usr/lib/systemd/system
    	systemctl enable supervisord.service
    	systemctl is-enabled supervisord
    
    	#将Nginx添加到SELinux白名单
    	yum -y install policycoreutils-python
    	semodule -i mynginx.pp
    	reboot
    }
    
    InstallSDK
    InstallMysql
    InstallIptables
    Installnginx
    InstallSupervisor
    
    

    更新部署

    #!/bin/bash
    service supervisord stop
    name=$1
    
    mv /home/Documents/NETCore /home/Documents/NETCore1
    mv /home/Documents/$name /home/Documents/NETCore
    
    cp -f /home/Documents/NETCore1/appsettings.json /home/Documents/NETCore
    cp -f /home/Documents/NETCore1/data.dll.config /home/Documents/NETCore
    
    mv -f /home/Documents/NETCore1/wwwroot/Content/userh5static/ /home/Documents/NETCore/wwwroot/Content/
    mv -f /home/Documents/NETCore1/wwwroot/Content/tempaltedown/ /home/Documents/NETCore/wwwroot/Content/
    mv -f /home/Documents/NETCore1/wwwroot/Content/userresource/ /home/Documents/NETCore/wwwroot/Content/
    mv -f /home/Documents/NETCore1/wwwroot/Content/resource/ /home/Documents/NETCore/wwwroot/Content/
    
    service supervisord start
    
  • 相关阅读:
    团队项目个人工作总结(4.27)
    团队项目个人工作总结(4.26)
    团队项目个人工作总结(4.25)
    评测—输入法
    学习进度(2016.4.24)
    团队项目个人工作总结(4.24)
    团队项目个人工作总结(4.23)
    第一阶段冲刺(第四天)
    典型用户和用户场景描述
    第一阶段冲刺(第三天)
  • 原文地址:https://www.cnblogs.com/zt102545/p/13940222.html
Copyright © 2011-2022 走看看