Дальнейшая автоматизация сценария установки среды сервера Ubuntu-Nginx-WordPress?

На самом деле у меня есть скрипт, который делает что-то подобное:

Просто скопируйте и вставьте этот скрипт в ~/bin (создайте эту папку, если она не существует):

#!/bin/bash
# ~/bin/dpkg
COUNT=0
for i in $@; do
        echo $i | grep http 2>&1 > /dev/null
        if [ $? == 0 ]; then
                URL="$URL $i"
                continue
        fi
        PASSTODPKG="$PASSTODPKG $i"
done

#Remove beginning and trailing space
URL=$(echo $URL | sed -e 's/^ //g' -e 's/ $//g')

if [ ! -z $URL ]; then
        mkdir /tmp/debs
        cd /tmp/debs
        for i in $URL; do
                wget "$i"
        done
        dpkg $PASSTODPKG /tmp/debs/*.deb
else
        dpkg $PASSTODPKG
fi

Затем добавьте это к последней строке в ~/.bashrc

PATH="~/bin:$PATH"

. Сценарий является всего лишь оберткой для dpkg. Строка в файле ~/.bashrc сообщает bash, что всякий раз, когда вы вводите dpkg, она будет запускать ~/bin/dpkg (сценарий), а не /usr/bin/dpkg.

Скрипт просто пройдет аргументы dpkg, если URL не указан. Сценарий также поддерживает несколько URL-адресов. Вот несколько примеров, которые будут работать:

sudo dpkg -i http://www.example.com/file1.deb
sudo dpkg -i http://www.example.com/file1.deb http://www.example.com/file2.deb
sudo dpkg -i http://www.example.com/file1.deb existing.deb http://www.example.com/file2.deb
sudo dpkg -i existing.deb
0
задан 17 January 2018 в 13:46

3 ответа

Вы можете сказать 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
0
ответ дан 22 May 2018 в 15:29

Вы можете сказать 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
0
ответ дан 17 July 2018 в 22:50

Вы можете сказать 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
0
ответ дан 24 July 2018 в 13:26

Другие вопросы по тегам:

Похожие вопросы: