An Introduction to Linux, .NET Core, ASP.NET Core & Docker...
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

An Introduction to Linux, .NET Core, ASP.NET Core & Docker (Workshop)

Welcome to An Introduction to Linux, .NET Core, ASP.NET Core & Docker, a full-day workshop.

In this workshop you will learn about: VirtualBox, Ubuntu Linux, .NET Core, ASP.NET Core, Docker, Node.js, Yeoman and more.

By the end of this workshop you will be ready to use Linux and .NET Core on your next work or personal project!



This workshop is broken (roughly) into 45 minute sessions covering the following topics:

  1. Ubuntu Linux Installation

  2. Ubuntu Linux Configuration & Maintenance

  3. "Hello, world!" .NET Core

  4. "Hello, world!" ASP.NET Core

  5. "Hello, world!" Docker

  6. "Hello, world!" via Node.js & Yeoman

  7. Choose your own adventure


My slide deck (as presented) is available here.

Help, Chat & Feedback

Please join the chat on gitter

Hit me up on Twitter @todthomson.

I encourage you to raise issues and send pull requests.

Software Versions

As this workshop is conducted solely in a virtual machine you should be able to complete it in any host operating system supporting the latest version of VirtualBox.

I have tested the workshop with the following software versions. You mileage may vary if you choose to use software and/or versions other than those listed below.

Software Version
VirtualBox 5.1.12 x64
Ubuntu Linux 16.10 x64
.NET Core 1.0.0-preview2.1-003177
ASP.NET Core (as above)
Docker 1.12.3
Node.js 7.2.0
Yeoman 1.8.5

The Workshop

The workshop begins here. You have approximately 45 minutes to complete each chapter. If you complete a chapter ahead of time please don't jump ahead. You should instead explore what you have built and/or complete the extension exercise at the bottom of the chapter.

1. Ubuntu Linux Installation

If you don't have a fresh Ubuntu Linux installation then start at Part 1.

2. Ubuntu Linux Configuration & Maintenance

Now you have a fresh Ubuntu Linux installation go to Part 2.

3. "Hello, world!" .NET Core

Once you have configured Ubuntu Linux head over to Part 3.

4. "Hello, world!" ASP.NET Core

So you have said your first hello to .NET Core? Continue on with Part 4.

5. "Hello, world!" Docker

And a second hello to ASP.NET Core? Strap on your helmet for Part 5.

6. "Hello, world!" via Node.js & Yeoman

Once you made your third hello to Docker embark on Part 6.

Workshop Complete

Congratulations! You have completed the workshop.

Next, choose your own adventure...

Here are some ideas for what you might like to work on next.

  1. Use the Ubuntu Apps Directory to "re-build" your desktop (with all the apps you love) in Ubuntu.

  2. Continue building-out and adding-to your Microservices application.

  3. Ignore Docker completely and build a Majestic Monolith on .NET Core.

  4. Have an existing .NET application? Here's a guide on porting it to .NET Core.

  5. Know a good FOSS .NET framework or library that isn't yet available on .NET Core? Mark Rendle says port it to .NET Core. Go go go!

Or just do whatever takes your fancy, but remember...

Production or it didn't happen!

I encourage you to share what you have built under an OSI-approved license on GitHub.


This workshop is licensed under the Creative Commons Attribution Share Alike 4.0 license so feel free to remix this workshop however you like.


This workshop has been run "in person" on the following occasions:

  1. Readify Queensland 18 Mar 2016 (37 attendees).
  2. Microsoft Brisbane 24 Jun 2016 (40 attendees).
  3. Youi Sunshine Coast 6 Sep 2016 (18 attendees).
  4. DDD Brisbane 2016 Brisbane 3 Sep 2016 (? attendees).

Please contact Readify Queensland if you would like us to run this workshop for you and your team.


Without the assistance of the following people (in chronological order) the development and execution of this workshop would simply not have been possible: