Officially supported :
- Ubuntu 16.04 or Ubuntu 18.04
- NGINX (minimum of 1.9.5 for SSL)
- A supported version of Node.js
- MySQL 5.5, 5.6, or 5.7 (not >= 8.0)
- A server with at least 1 GB memory
- A registered domain name
Before you start this installation if you want to configure the SSL certificate you should set an A record from the domain you plan to use, pointing at the server’s IP address and ensure that it's resolving correctly.
Create User: (Don't use username 'ghost' as it conflicts Ghost-CLI)
CLI will ask a number of questions to configure your site.
Enter the exact URL your publication will be available at and include the protocol for HTTP or HTTPS. For example,
https://example.com. If you use HTTPS, Ghost-CLI will offer to set up SSL for you. Using IP addresses will cause errors.
This determines where your MySQL database can be accessed from. When MySQL is installed on the same server, use
localhost (press Enter to use the default value). If MySQL is installed on another server, enter the name manually.
MySQL username / password
If you already have an existing MySQL database enter the the username. Otherwise, enter
root. Then supply the password for your user.
Ghost database name
Enter the name of your database. It will be automatically set up for you, unless you're using a non-root MySQL user/pass. In that case the database must already exist and have the correct permissions.
Set up a ghost MySQL user? (Recommended)
If you provided your root MySQL user, Ghost-CLI can create a custom MySQL user that can only access/edit your new Ghost database and nothing else.
Set up NGINX? (Recommended)
Sets NGINX up automatically enabling your site to be viewed by the outside world. Setting up NGINX manually is possible, but why would you choose a hard life?
Set up SSL? (Recommended)
If you used an
https Blog URL and have already pointed your domain to the right place, Ghost-CLI can automatically set up SSL for you using Let's Encrypt. Alternatively you do this later by running
ghost setup ssl at any time.
Enter your email
SSL certification setup requires an email address so that you can be kept informed if there is any issue with your certificate, including during renewal.
Set up systemd? (Recommended)
systemd is the recommended process manager tool to keep Ghost running smoothly. We recommend choosing
yes but it’s possible to set up your own process management.
yes runs Ghost, and makes your site work.
Reference - https://ghost.org/docs/install/ubuntu/