This is the second video in a forthcoming series on web application development and related topics. This video assumes you’ve gone through the steps in Screencast 1: Preparing VirtualBox for Ubuntu Server 18.04.
When I start a new project, I carry out the same basic steps. In most cases it starts with a server install of Ubuntu. Watch the following screencast where I walk through the initial dev server setup I use for Ubuntu 18.04.
In this screencast, I’ll walk you through installing and the first steps to configure an ubuntu server 18.04 in a virtual machine on your local workstion. I’ll assume you have a fresh virtual machine for ubuntu with the disk image mounted. Now we can start the virtual machine and begin the ubuntu server install process.
The screencast is divided into 4 parts with the video notes at the end of this post.
Part 1: Ubuntu Server 18.04 install in VirtualBox
Part 2: Configuring Emacs, ssh, and /var/www in Ubuntu Server 18.04
Part 3: Configuring /etc/hosts, ssh, and ssfs from your workstation for Ubuntu Server 18.04
Part 4: Enabling ufw in Ubuntu Server 18.04
Required software, if installing from MacOS:
Here are the main snippets of what I show in the video:
First commands after installing, and logged in to the server as the user account:
ip addr command gets an IP address, e.g. 192.168.2.26, so we can replace with the ip address in the code below with what it returns.
My minimal emacs config file (in
~/.emacs.d/init.el) is as follows :
 Source on github
Uncomplicated Firewall: ufw
/var/www folder for future applications:
The rest of the setup happens on the local workstation (in my case it’s either Mac or Linux).
Add the server IP address and hostname to
/etc/hosts on my local workstation:
Make ssh a little quicker with
Add ssh key-based authentication:
Bash alias for sshfs on the workstation (
.bash_profile on MacOS,
.bashrc on Ubuntu workstations):
Verify nginx is accessible from the workstation using curl:
At this point the server is installed with its basic packages and configuration and I can edit files from my workstation. From here I can install an application’s stack-specific packages on the server.
Feel free to get in touch with your suggestions. I look to improve and refine this. Or let me know if you adopt what I have or made use of it in some way.
In my forthcoming screencast video, I’ll walk through my typical steps of setting up a web application.