Documentation
https://devdocs.magento.com/guides/v2.3/install-gde/bk-install-guide.html

Prerequisite check
apache2 2.4 (Ubuntu: apache2 -v)
PHP version 7.2 or 7.3 (php -v)
MySQL version 5.6 or later (mysql -v)

Installation Steps:

1. Use the depository for later PHP version
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.2

2. Intall curl
Download the installer:
sudo curl -s https://getcomposer.org/installer | php
Move the composer.phar file:
sudo mv composer.phar /usr/local/bin/composer

3. Set php.ini:
memory_limit=2G
opcache.enable=1

4. Install with Options:
sudo ./magento setup:install –base-url=http://greatime.dataclubus.com/ \
–db-host=localhost –db-name=greatime \
–db-user=mji –db-password=dataclub \
–admin-firstname=Minda –admin-lastname=Ji –admin-email=mji@dataclubus.com \
–admin-user=admin –admin-password=minda96 –language=en_US \
–currency=USD –timezone=America/Los_Angeles –cleanup-database \
–sales-order-increment-prefix=”ORD$” –session-save=db –use-rewrites=1

4. Find admin URL
php bin/magento info:adminuri

change Admin URL from backend
php bin/magento setup:config:set –backend-frontname=”admin”

5. Set up cron job
https://devdocs.magento.com/guides/v2.3/install-gde/install/post-install-config.html

6. Create crontab for www-data
$sudo su – (switch to root)
#su www-data -s /bin/bash -c “./magento cron:install”
*must use bash to act as www-data

Check crontab file saved for www-data:
2. crontab -u www-data -e

7. Data Import and Export :
#su www-data -s /bin/bash -c “php bin/magento queue:consumers:start exportProcessor &”

Problem if not: “Message is added to queue, wait to get your file soon”
(# sudo php bin/magento queue:consumers:start exportProcessor &)

In the magento cli run bin/magento queue:consumers:list, find the correct consumer, in this case exportProcessor then run bin/magento queue:consumers:start exportProcessor &

To get correct ownership, must run it as www-data:
#su www-data -s /bin/bash -c “php bin/magento queue:consumers:start exportProcessor &”

Migration from 2.33 to 2.34 with data

  1. $mysql -u root -p greatime < greatime-backup.sql
  2. run bin/magento setup:upgrade
  3. chown www-data:www-data * -R

Magento Version Upgrade
https://blog.magestore.com/upgrade-magento-2-3/

Trouble Shooting

Display errors to display error messages (server error 500 or blank page)
Step 1: Edit greatime/app/bootstrap.php by uncomment:
#ini_set(‘display_errors’, 1);
or:
Add or edit index.php in the root directory
/** added by minda to display error messages in browsers when it displays a blank page */
ini_set(‘display_errors’, 1);

Step 2: Enable display of error details on the browser
Go to /var/www/html/magento2ce/pub/errors
cp local.xml.sample local.xml

Magento 2.3 Installation Notes