What is Ghost?
Ghost is a free and open source blogging tool developed based on NodeJS. It is also used to build and run modern blogs, magazines and periodicals.
How to Deploy Ghost
21YunBox provides a very simple Ghost deployment method. Since there are different scenerios, we have prepared two deployment solutions for you.
Solution 1: For Medium and Large Projects, the Best Performance Solution: Ghost + MySQL
Ghost blogs are generally used in conjunction with MySQL databases, which is also the combination suggested by Official Document
This solution is equipped with an independent MySQL database, the performance will be better, and it can support more users to read your blog at the same time!
Ghost Deployment
You can deploy Ghost to the server through the following steps:
- Signup on 21YunBox
- Create a MySQL database
- Click “Hosted Application” in the navigation menu, then select “Ghost”
In terms of choosing service configuration, Ghost official documentation suggests https://ghost.org/docs/hosting/#self-hosting Use at least 1GB RAM and 10GB cloud disk. If you choose a machine with fewer cloud disks for deployment, the deployment may fail.
4. Click Advanced Configuration and add the following environment variables:
Environment Variable Key | Environment Variable Value | |
---|---|---|
NODE_ENV |
production |
|
url |
https://<app_id>.21yunbox.com |
|
database__client |
mysql |
|
database__connection__host |
MySQL host name | |
database__connection__database |
MySQL database | |
database__connection__user |
MySQL username | |
database__connection__password |
MySQL user password |
For other Ghost environment variable configurations, please refer to Ghost official documentation: https://ghost.org/docs/config/#configuration-options
5. Click “Create Now”
Before you know it, your Ghost is deployed online and you can access it through https://<app_id>.21yunbox.com/ghost
.
Operation Video
If you are not sure how to perform the above steps, you can watch the following operation video:
Solution 2: For Small and Medium-sized Projects, the most cost-effective solution is Ghost + SQLite
The Ghost blog also supports deployment schemes used in conjunction with SQLite databases. This is not an official recommendation combination. If it is a small or medium-sized project with a small number of users, this configuration is sufficient.
Ghost Deployment
You can deploy Ghost to the server through the following steps:
- Signup on 21YunBox
- Click “Hosted Application” in the navigation menu, then select “Ghost”
In terms of choosing the service configurations, Ghost official documentation suggests https://ghost.org/docs/hosting/#self-hosting Use at least 1GB RAM and 10GB cloud disk. If you choose a machine with fewer cloud disks for deployment, the deployment may fail.
3. Click Advanced Configuration and add the following environment variables:
Environment Variable Key | Environment Variable Value |
---|---|
NODE_ENV |
production |
url | https://<APP_ID>.21yunbox.com |
If additional configurations are needed, please refer to Ghost official documentation: https://ghost.org/docs/config/#configuration-options
In a matter of seconds, you will be able to access your deployment through https://<app_id>.21yunbox.com/ghost
.
4. Click “Create Now”
Configure a Custom Domain Name
21YunBox provides a simple custom domain name configuration, when you complete ICP Filing. You will only need to add a custom domain name in “Settings”, and then change the main domain name by modifying the environment variable url
, as follows:
Environment Variable Key | Environment Variable Value |
---|---|
url |
https://www.your-domain.com |
Configure Sending Mail Service
If you need to use Ghost to send mail, you can use a third-party mailing service provider, such as Mailgun, they support a quota of 10,000 emails per month.
Take Mailgun as an example. After you create an account and related Token, you can use the following environment variables to configure:
Environment Variable Key | Environment Variable Value |
---|---|
mail__transport |
SMTP |
mail__options__service |
Mailgun |
mail__options__auth__user |
Sending email address configured in Mailgun |
mail__options__auth__pass |
Password configured in Mailgun |
If you use other sending mail service providers, you can refer to Ghost’s official documents to configure yourself https://ghost.org/docs/concepts/config/#mail.
When the configuration is complete, click “Update Configuration” in the upper right corner, 21YunBox will help you restart Ghost and configure the mail service