С помощью следующего скрипта я создаю среду на основе Ubuntu-Nginx-WordPress. Как я могу в дальнейшем автоматизировать (а значит сократить) количество кода в этом скрипте?
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
Вы можете указать curl
написать прямо в /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
в 17.04, а у более новой есть опция -u
, позволяющая пропустить явное apt-get update
:
-u, --update After adding the repository, update the package cache with
packages from this repository (avoids need to apt-get update)
Вы также можете объединить шаги apt-get upgrade
и 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
Объединить:
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