Mais automatização do script de estabelecimento do ambiente do servidor Ubuntu-Nginx-WordPress?

0

Com o script a seguir, eu crio um ambiente baseado no Ubuntu-Nginx-WordPress. Como eu poderia automatizar (e encurtar) a quantidade de código nesse script?

add-apt-repository ppa:certbot/certbot -y && apt-get update -y && apt-get upgrade -y
ufw enable && ufw allow 22/tcp 25/tcp 80/tcp 443/tcp 9000/tcp
apt-get install zip unzip tree unattended-upgrades sshguard postfix nginx python-certbot-nginx mysql-server php-fpm php-mysql php-mbstring php-mcrypt -y
sed -i "s/# gzip_/gzip_/g" /etc/nginx/nginx.conf
sed -i "s/max_size = .M/max_size = 200M/g" /etc/php/*/fpm/php.ini
sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g" /etc/php/*/fpm/php.ini
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar && chmod +x wp-cli.phar && mv wp-cli.phar /usr/local/bin/wp

Notas

  • Estou aberto para usar o Tasksel.
  • Eu não quero usar o Ansible ou o Salt, pois ambos me parecem esmagadores e complicados para o que estou tentando alcançar.
por Arcticooling 17.01.2018 / 01:34

1 resposta

0

Você pode dizer a curl para gravar diretamente em /usr/local/bin/wp :

curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar > /usr/local/bin/wp && chmod +x /usr/local/bin/wp

add-apt-repository em 17.04 e mais recente tem um -u opção, permitindo ignorar o apt-get update explícito:

-u, --update After adding the repository, update the package cache with
             packages from this repository (avoids need to apt-get update)

Você também pode combinar as etapas apt-get upgrade e install :

apt-get upgrade zip unzip tree unattended-upgrades sshguard postfix nginx python-certbot-nginx mysql-server php-fpm php-mysql php-mbstring php-mcrypt -y

Combinado:

add-apt-repository ppa:certbot/certbot -yu
ufw enable && ufw allow 22/tcp 25/tcp 80/tcp 443/tcp 9000/tcp
apt-get upgrade zip unzip tree unattended-upgrades sshguard postfix nginx python-certbot-nginx mysql-server php-fpm php-mysql php-mbstring php-mcrypt -y
sed -i 's/# gzip_/gzip_/g' /etc/nginx/nginx.conf
sed -i 's/max_size = .M/max_size = 200M/g' /etc/php/*/fpm/php.ini
sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /etc/php/*/fpm/php.ini
curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar > /usr/local/bin/wp && chmod +x /usr/local/bin/wp
    
por muru 17.01.2018 / 05:23