¿Quiere automatizar la instalación del servidor web Apache, la base de datos MySQL, PHP y WordPress? Entonces aquí está el tutorial sobre eso.
Creé un script que comprende todos los comandos que necesitamos para instalar LAMP en Ubuntu 20.04 LTS focal fossa y sobre ese WordPress. Esto es realmente útil si desea configurar y ejecutar un blog o sitio web de WordPress en su servidor Ubuntu Linux al instante sin presionar cada comando uno por uno.
Instala LAMP y WordPress usando Script en Ubuntu 20.04 LTS
Lo que tienes que hacer es abrir el terminal de comandos o si está utilizando VPS Hosting o servidor en la nube, entonces ya está allí.
Cambiar a usuario root:
sudo su -
Cree un archivo de secuencia de comandos:
apt install nano -y
nano word.sh
Ahora, copie y pegue todos los comandos que se indican a continuación en el archivo creado:
#/bin/sh
install_dir="/var/www/html"
#Creating Random WP Database Credenitals
db_name="wp`date +%s`"
db_user=$db_name
db_password=`date |md5sum |cut -c '1-12'`
sleep 1
mysqlrootpass=`date |md5sum |cut -c '1-12'`
sleep 1
#### Install Packages for https and mysql
apt -y update
apt -y upgrade
apt -y install apache2
apt -y install mysql-server
#### Start http
rm /var/www/html/index.html
systemctl enable apache2
systemctl start apache2
#### Start mysql and set root password
systemctl enable mysql
systemctl start mysql
/usr/bin/mysql -e "USE mysql;"
/usr/bin/mysql -e "UPDATE user SET Password=PASSWORD($mysqlrootpass) WHERE user='root';"
/usr/bin/mysql -e "FLUSH PRIVILEGES;"
touch /root/.my.cnf
chmod 640 /root/.my.cnf
echo "[client]">>/root/.my.cnf
echo "user=root">>/root/.my.cnf
echo "password="$mysqlrootpass>>/root/.my.cnf
####Install PHP
apt -y install php php-bz2 php-mysqli php-curl php-gd php-intl php-common php-mbstring php-xml
sed -i '0,/AllowOverride\ None/! {0,/AllowOverride\ None/ s/AllowOverride\ None/AllowOverride\ All/}' /etc/apache2/apache2.conf #Allow htaccess usage
systemctl restart apache2
####Download and extract latest WordPress Package
if test -f /tmp/latest.tar.gz
then
echo "WP is already downloaded."
else
echo "Downloading WordPress"
cd /tmp/ && wget "http://wordpress.org/latest.tar.gz";
fi
/bin/tar -C $install_dir -zxf /tmp/latest.tar.gz --strip-components=1
chown www-data: $install_dir -R
#### Create WP-config and set DB credentials
/bin/mv $install_dir/wp-config-sample.php $install_dir/wp-config.php
/bin/sed -i "s/database_name_here/$db_name/g" $install_dir/wp-config.php
/bin/sed -i "s/username_here/$db_user/g" $install_dir/wp-config.php
/bin/sed -i "s/password_here/$db_password/g" $install_dir/wp-config.php
cat << EOF >> $install_dir/wp-config.php
define('FS_METHOD', 'direct');
EOF
cat << EOF >> $install_dir/.htaccess
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
EOF
chown www-data: $install_dir -R
##### Set WP Salts
grep -A50 'table_prefix' $install_dir/wp-config.php > /tmp/wp-tmp-config
/bin/sed -i '/**#@/,/$p/d' $install_dir/wp-config.php
/usr/bin/lynx --dump -width 200 https://api.wordpress.org/secret-key/1.1/salt/ >> $install_dir/wp-config.php
/bin/cat /tmp/wp-tmp-config >> $install_dir/wp-config.php && rm /tmp/wp-tmp-config -f
/usr/bin/mysql -u root -e "CREATE DATABASE $db_name"
/usr/bin/mysql -u root -e "CREATE USER '$db_name'@'localhost' IDENTIFIED WITH mysql_native_password BY '$db_password';"
/usr/bin/mysql -u root -e "GRANT ALL PRIVILEGES ON $db_name.* TO '$db_user'@'localhost';"
######Display generated passwords to log file.
echo "Database Name: " $db_name
echo "Database User: " $db_user
echo "Database Password: " $db_password
echo "Mysql root password: " $mysqlrootpass
Para guardar el archivo de script, presione Crtl+X y luego escribe Y y pulsa Intro botón.
Ahora ejecuta el Script:
sh word.sh
Espere unos minutos dependiendo de su conexión a Internet, configurará Apache, MySQL, PHP y WordPress. Una vez que se complete el script, también mostrará la base de datos, el nombre de usuario y la contraseña raíz de MySQL creados. Anota eso en alguna parte.
Abre tu navegador y escriba la dirección IP del servidor o sistema donde ha ejecutado el comando anterior. Mostrará el proceso para configurar el sitio web de WordPress, incluido el nombre de usuario y contraseña por lo mismo.

Opcional :
En caso de que necesite phpMyAdmin, use el siguiente comando después de instalar WordPress para manejar fácilmente las bases de datos.
apt install phpmyadmin