Table of Contents
1 Install Joomla
- This article uses default SSL/TLS certicication file for https. Please change your SSL/TLS certification file.
- If you use http instead of https, change 443 to 80 and delete SSLXXX directive in /etc/apache2/sites-available/joomla.conf.
- JOOMLA_PASSWD is password of joomla user in MySQL.
#!/bin/shset -eMYSQL_VERSION=5.7[ -z “${MYSQL_PASSWD}” ] && MYSQL_PASSWD=mysql[ -z “${JOOMLA_PASSWD}” ] && JOOMLA_PASSWD=joomla[ -z “${PHPMYADMIN_PASSWD}” ] && PHPMYADMIN_PASSWD=phpmyadminmysql_install(){ cat <<EOF | sudo debconf-set-selectionsmysql-server-${MYSQL_VERSION} mysql-server/root_password password ${MYSQL_PASSWD}mysql-server-${MYSQL_VERSION} mysql-server/root_password_again password ${MYSQL_PASSWD}EOF sudo apt install -y mysql-server cat<<EOF | sudo mysql -uroot -p${MYSQL_PASSWD}grant all privileges on joomla.* to joomla@localhost identified by ‘${JOOMLA_PASSWD}’;flush privileges;exitEOF}phpmyadmin_install(){ cat <<EOF | sudo debconf-set-selectionsphpmyadmin phpmyadmin/reconfigure-webserver multiselect apache2phpmyadmin phpmyadmin/dbconfig-install boolean truephpmyadmin phpmyadmin/mysql/admin-pass password ${MYSQL_PASSWD}phpmyadmin phpmyadmin/mysql/app-pass password ${PHPMYADMIN_PASSWD}phpmyadmin phpmyadmin/app-password-confirm password ${PHPMYADMIN_PASSWD}phpmyadmin phpmyadmin/setup-username string adminphpmyadmin phpmyadmin/setup-password password ${PHPMYADMIN_PASSWD}EOF sudo apt install -y phpmyadmin}joomla_install(){ sudo apt install -y php-mysql php-json php-curl JOOMLA3=https://downloads.joomla.org/cms/joomla3 wget -q ${JOOMLA3}/3-7-2/Joomla_3-7.2-Stable-Full_Package.tar.bz2 sudo mkdir -p /var/www/joomla sudo tar jxf Joomla_3-7.2-Stable-Full_Package.tar.bz2 -C /var/www/joomla rm -f Joomla_3-7.2-Stable-Full_Package.tar.bz2}apache_install(){ sudo apt install -y apache2 libapache2-mod-php sudo chown -R www-data:root /var/www/joomla cat <<EOF | sudo tee /etc/apache2/sites-available/joomla.conf<VirtualHost _default_:443> SSLEngine on SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key Alias /joomla /var/www/joomla <Directory /var/www/joomla> Options FollowSymLinks Require all granted </Directory></VirtualHost>EOF sudo a2enmod ssl sudo a2enmod php7.0 sudo a2ensite joomla sudo systemctl enable apache2 sudo systemctl restart apache2}joomla_main(){ mysql_install phpmyadmin_install joomla_install apache_install}joomla_main
2 Access to Joomla
Access to the following URL and setup Joomla. Accept this page’s certification to browser.
Username of database is joomla and password of database is JOOMLA_PASSWD value.
https://<server>/joomla