Home

Setup Ubuntu for Web Development in One Command (and some config)

If you repeat tasks over and over to setup new Ubuntu web development machines, perhaps you'll find some use in a script I wrote to solve this issue.

I don't manage a ton of servers, but I've set up enough to get tired of going through the long process over and over. I wanted a better solution.

Most of my servers are hosted by Digital Ocean (which is a fantastic service), and they let you create images. This worked for me for awhile, but every once in awhile you need new software, and an image creates a point in time that an update to that software won't necessarily fix.

So I created Ripen -- a one-command script that will install essentially anything you need. It's a little more involved than that, but it does get you up and running quickly.

Here's a quick reiteration of the usage section of the README.

First, make sure you are running as root.

$ sudo su -

This should switch you to the root home directory. Next, install and edit the config file.

$ wget https://raw.githubusercontent.com/rocktree/ripen/master/ripen.conf
$ vim ripen.conf

I've added a handful of installation options. They are all relevant when I create a blank Digital Ocean droplet. But if I install Ubuntu Server on a machine at home, then I already have a lot of the items shown here. For example, I might change all of these items:

ripen.conf

# -------------------------------------- User Account

# ...

add_user=false

# ...

# -------------------------------------- Bash Config

# ...

adjust_bash_config=false

# ...

add_bash_profile=false

# -------------------------------------- PostgreSQL

# ...

install_postgresql=false

# -------------------------------------- Swapfile

# ...

add_swapfile=false

And, of course, don't forget to fill in the rest of the options for your specific configuration. This is just one example.

And, last, make sure you delete your config file - it contains plain text passwords.

$ rm ripen.conf

If you have changes or want options added, I am accepting pull requests, or you can create a feature request.

Let's Connect

Keep Reading

Extract GitHub Repo Name from URL using JavaScript

Quick JavaScript/Node snippet that can pul a GitHub repo path from a full GitHub URL.

Apr 20, 2022

React May Not Be the Best Tool for Your Project

React is a great tool with a massive developer community. It comes with its own benefits and challenges. And yet, there may be tooling that is more suitable to your project.

Apr 19, 2023

WTF is a Headless CMS

The headless CMS is a core tenet of the Jamstack approach, a gamechanging approach to building modern websites. Here is an intro to the headless CMS approach.

Mar 26, 2020