Hey guys, this is Russell.
I have paid nearly 2 months of my personal time to build this site. Actually, 2 hours may be enough for that, and most of my time was used to get known about all relative knowledge.
I am gonna try to note all the steps I have done with it, and I wish it could help others or remind me for a later time.
1. DESIRE & DESIGN
As a product manager, the function and interface design is my skilled work.
My thought is to make the site as a diary note for myself, a communication tool with others, and it will be cool if there are any possible to be my coding laboratory as well.
The MockingBot is used to make the prototype design. I love it so much because it's easy to use. And it's browser-based, which means there is no need to make any installation in my devices, the design work can be done anytime anywhere, even on my cell phone.
2. OWN A SERVER
Due to my physical location, there are several choices to own a cloud virtual server, such as AWS, Alibaba Cloud, Tencent Cloud, Azure. Actually, the choice will be no big differences as to run a personal web site. So, just choose a feasible instance type, and make a price comparison within them.
For some reason, my final choice is the Tencent Cloud. The cloud server info is the following:
Model: S5.MEDIUM4,
Cores: 2 Cores,
Memories: 4GB,
CPU: Intel Xeon Cascade Lake 8255C(2.5 GHz),
Storage: 50Gb SSD,
Network Bandwidth: 2Mb,
System: Ubuntu Server 18.04
After that purchase, there are still a few steps to do. To buy a domain name, login into the server's console panel, launch the server, activate the domain, and configure its SSH for later use.
3. REMOTE DEVELOPMENT
As the cloud server is ready, we can use the terminal from the services provider's page, or a better way is to use SSH client to start a remote development. Also, many choices can be taken, but VScode is the best of all. It's free, popular, multifunctional and extensible.
OK, now its time to get started.
Here are softwares / frameworks will be involved in the next:
Ubuntu | Nginx | WSGI | Python | Django | Bootstrap | MySQL | Jupyter | ...