Running the “Introducing Postman” Sample API on Ubuntu 18

A few weeks ago “Introducing Postman“, my first course for LinkedIn Learning/Lynda.com went live. This course focuses on many of the most useful features for individuals working with Web-based APIs including making requests, organizing requests, managing environments and variables, and sharing authentication methods across requests within folders and collections.

In an effort to minimize 3rd party dependencies that could “break” the course I developed a sample API and constructed all of the demos and exercises around that. I provided instructions for both Windows and Mac users to run the API prior to diving into the Postman demos. Naturally, one of the first questions asked about the course was “How do you run the sample application on Ubuntu 18?”

Now I freely bounce back and forth between Mac and Windows but I’m not what one would consider a Linux aficionado. Upon seeing that question I said to myself “Hmm, that’s a great question!” and set out to learn how to do it myself. I’m writing this with the hope that it answers that question and helps others who run into the same issue.

Installing Ubuntu on Parallels

I don’t generally have access to an Ubuntu box so my first step was getting a VM up and running. I began by obtaining the ISO image for Ubuntu 18.04.2 LTS. This was nearly a 2GB download so I was really happy about my gigabit fiber connection! Installation in a Parallels VM was easy although I did need to tweak some settings to get a resolution better than 600×800.

The next issue was that I wanted to share some files between the environments to help document this process. I verified that Parallels was configured to share my home folder and that it was set to map the Mac volumes to Linux but I couldn’t find the shared folders anywhere within the VM. I had seen warnings that the Parallels Tools are broken on Ubuntu 18. I did stumble upon some instructions on how to get them to run. I snapshotted my VM and tried them out but unfortunately it appears that the Parallels Tools have been updated since those instructions were written and they no longer worked. Since I didn’t plan on keeping this VM around long I gave up trying here and just used a cloud storage account to transfer files between the two environments.

Installing Node.js

The sample API delivered with the course is a node.js application so we need to install node.js to run it. This was pretty easy and required only following this tutorial provided by DigitalOcean which walks us through obtaining the packages through apt. The relevant part of the tutorial is under the heading “Installing the Distro-Stable Version for Ubuntu.”

After installing both node.js and npm I checked the versions and found versions 8.10.0 and 3.5.2 were installed, respectively. The node.js version agreed with that listed in the tutorial but I’m sure that will change at some point.

Running the Sample API

Once node.js and npm are installed we can run the API. As described in the course we need to navigate to the api/node folder from the exercise files. Once there we can run follow the instructions for running on a mac:

  • npm i to install the various dependency packages
  • npm run start-mac to start the sample API

When the API is running you’ll see a message indicating that it is listening on port 3000.

Installing Postman

For the sake of completeness let’s also look at installing Postman on Ubuntu. Postman can be obtained through either the Postman download page as described in the course or through the Ubuntu Software utility. Unfortunately at the time of this writing the version in the Ubuntu Software utility is 6.7.1 which is incompatible with 7.x. I’ve updated a number of my projects already so I opted for downloading the software from getpostman.com and following the installation instructions there.

It turns out that installing Postman in a Linux environment isn’t quite as straightforward as Windows or Mac. Installing it on Ubuntu 18 also requires the additional installation of libgconf-2-4 so be sure to follow those Linux installation instructions carefully.

Making a Request

Once I got Postman installed I was able to log in with the Postman account I used to record the course. I was immediately presented with the history and collections as I left them. I opened the API Status request, sent it, and saw the expected result as described in the course.

Wrapping Up

So there you have it – running the Sample API from my Introducing Postman course on LinkedIn Learning/Lynda.com. The setup itself wasn’t so bad and chances are that if you’re asking the question you won’t be dealing with the VM setup headaches I did when I set out to answer the question. In general I found the overall experience of getting both the sample API and Postman running on Ubuntu 18 to be a bit tiresome but I think a good chunk of that is attributable to my lack of experience with that particular environment.

Regardless, I hope this helped you out!

Advertisements

Your thoughts?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.