I'm starting this blog post in the airport at Copenhagen while drinking the most expensive coffee I've ever bought, but it doesn't matter because it's been a huge week for Docker Inc, the Dockercon attendees, myself and for the whole container community.
The last Dockercon event I attended was in Austin in May and I spent most of the time indoors practising my talk for the closing keynote session - Moby's Cool Hacks. So much has changed since I announced OpenFaaS (Functions as a Service) and ran through auto-scaling and Alexa demos live on stage. I'll talk about the speaking opportunities I had this week and share some of my conference highlights too.
Build, Ship, Run - Kubernetes
The biggest announcement was that Docker will now bundle the Kubernetes orchestration platform with their enterprise product range called "EE" or "Docker Enterprise Edition". There has been some speculation that this would be inevitable since Swarm was launched last June. Personally I started learning Kubernetes a few months ago and found the transition relatively straight forward. I didn't do this to jump ship, in fact I (like many others) have dedicated many hours to teaching and writing about Docker Swarm. My motivation for blogging has always been to make seemingly complex technology accessible and digestible by the wider community. I know many of us don't all have the time or budget necessary to spend keeping up with technology.
Read more about Docker's official announcement here
Overnight developers and infrastructure specialists around the world have been given a decision to make about where to invest their time.
Should I learn Docker or Kubernetes?
I've put together a short-course for bootstrapping your learning experience as well as succinct guide comparing the things you need to know about Docker and Kubernetes.
One of the other important parts of Dockercon for me is the Docker Captains group. We are a bunch of 60 +/- individuals from around the world who have shown a commitment to sharing about container technology. We have grown as a group since forming and provide support for each other as well as encouragement and insight into the industry from a wide range of backgrounds.
If you're looking for a great UI to use with Kubernetes - check-out the work Dimitris who I met at the conference. He built an admin UI for some of his clients and called it Kubernetic - available for Windows/Linux and Mac.
Tech Field Day
On Monday afternoon I had the privilege of being invited to join with Stephen Foskett from GestaltIT as a delegate to hear from his industry sponsors about technology they were building. I was excited about the approach AppDynamics used to instrument distributed applications at the byte-code level. This means developers can be hands-off and you can retro-fit to legacy applications easily.
I was asked to present on OpenFaaS - a serverless framework built for a cloud native eco-system. The use of containers, the Docker image format and the way we trust the orchestration platform to deliver are the key differences between OpenFaaS and any other similar project.
Kelsey Hightower recently spoke on Twitter about how the container has to be the workload for a serverless system. I couldn't agree more.
From the first commit until now - container images have always been the primitive for our functions. Ruby, .NET, Go.. Windows.. you name it. https://t.co/acbUj6wqkb— OpenFaaS (@openfaas) October 21, 2017
Here's the video recording by Stephen:
I met Keith Townsend aka CTO Advisor and had the chance to talk about his journey and frustrations with other Serverless frameworks he had tried out. More from Keith below:
FaaS and Furious
During the conference I met up with old friends, influencers, industry analysts and made lots of new connections with great people. Thanks to all for the validation about what we're doing.
Birds-of-a-feather a.k.a. hallway track
The next engagement on my calendar was with the "Hallway Track" - these are sessions for up to 5 people to compare notes. We had around 20 people arrive and even then turned a few away. It was very useful to hear what people are expecting from Serverless Functions and to compare notes with folks approaching the problem from different directions.
Conference Talk in the Community Theatre
Speaking in the Community Theatre reminded me of my first talk at Dockercon in 2016 in a crowded expo hall. The team had created a much better space for this event - kudos. The lack of a ball-room or auditorium did not prevent the crowds from turning up for a standing-room only talk - Zero to Serverless in 60 seconds.
The initial recording is available here via the Dockercon website:
I met Finnian Anderson (17yrs) back in February and was impressed by a Raspberry Pi cluster he had created from my blog content and guides. I helped him to get connected to Docker who flew him over with a parent to attend Dockercon in Austin and present a Cool Hack. This event was his second Dockercon and he built out a fascinating project with his best friend Oli.
How can you help mentor people practically?
Well we spent time at the conference together - met up regularly and I helped review their slides. I give advice about putting the demo together and on addressing the audience, but on the day they spoke with confidence in front of a packed audience. I'm looking forward to seeing what they will do with OpenFaaS next.
In their talk they covered some of the approaches for Machine Learning they had tried. In the end they decided not to create their own model, but to use a pre-trained model and a package called (Caffe) from the University of Berkeley. The two of them showed us how to turn a black and white film into colour - a process that according to Finnian can cost up to £3000/minute. They did this for free in their hotel room on a MacBook with a collection of OpenFaaS functions - for free.
Finnian came up with an idea for a Twitter bot called @colorisebot but the execution was a team-effort which meant investing my own time coding, testing and supporting the effort right up to the last minute.
I helped package the machine-learning model (Caffe) as an OpenFaaS function with Docker, arranged for sponsorship with Packet.net, leveraged Minio for storage, designed an asynchronous architecture using NATS Streaming so that the bot could scale up for demand. Finnian also needed help with error handling to make sure the bot could survive unexpected issues.
Look out for when we release the source-code in a few weeks with full instructions for the functions, bot and video converter..
You can view the video for yourself here - Repainting the past with Machine Learning and OpenFaaS.
The third slot was on Wednesday where I joined with Phil Estes (IBM), Chad Arimura (Oracle) and Erica Windisch from IOpipe to discuss the state of serverless and to compare notes on our approach to community, architecture and user stories.
I only found out later that Steve Singh - Docker's CEO had sneaked in at the back to take notes after having announced Serverless was on Docker's radar in the opening keynote the day before.
A Tweet showing improvements in the default container security policy for Docker Swarm.
At the end of the conference Docker ran a "Moby Summit" - Moby is the new name for the "open source" version of "Docker". It is also the name of an organisation or group where the Docker open-source projects are gathered together. Solomon shared that the governance model is moving from Benevolent Dictator to a committee-style panel as seen in the Kubernetes project.
Solomon Hykes shared that a firm lead and saying no are essential for a small team which is growing fast, but that now internal teams have grown into entities which self-manage.
It's hard to pick my favourite sessions from the summit, but I'll say that they were all exceptional and will be available online soon on the Docker blog.
Keep an eye out for:
buildkit - a brand new re-imagined builder for Docker images and other artefacts too. Think CI, but next-gen. I'm excited about how this can be integrated into serverless platforms.
The cri-containerd project is a joint venture between Google and Docker Inc which brings the new containerd runtime/daemon to Kubernetes. The vision here is that Kubernetes will swap out "Docker 1.12" for containerd which is both more modular and targeted as a container runtime.
Abhi the lead maintainer from Docker Inc demoed a set of serverless functions which allowed him to specify all the software appliances he needed in a basket and finally constructed a LinuxKit VM. This is space age stuff and both fun and exciting to see engineers adopting OpenFaaS functions to create compelling demos.
- OpenFaaS at the summit
During my very short talk (15min) on OpenFaaS I wanted to give you all a sense of what makes OpenFaaS different to the projects backed by corporate vendors.
We are rocket-fuelled by a motivated and engaged community of diverse and talented people who are creating something they want to use and love building.
Take John Mccabe who I'd only met for the second time. John has built a menu-bar integration called openfaas-bitbar. He's also contributed in many other areas including migrating us from the Golang flags package to a Cobra CLI.
I then announced that OpenFaaS was added to the CNCF Landscape and spoke about how we were awarded the Bossie award for Best Cloud Software 2017 along with Docker CE and Kubernetes.
The Cloud Native Landscape helps professionals navigate the emerging technology as well as providing a home for unique projects within the Cloud Native Computing Foundation - the home of Kubernetes.
Docker Inc is embracing Kubernetes - a huge project which is well-known for a thriving community but also notorious for its complexity.
My prediction is that Docker Inc's involvement will democratize the experience for every-day developers and that the whole ecosystem will become easier to use and more readily available.
I believe one of the ways they will do that is by taking decisions away about which networking, storage drivers to use and how to deploy and create clusters.
The term Serverless is on the top of Gartner's hype curve, so beware of the promises from the dozens of projects which will emerge in this space over the coming months. Test them for yourselves and evaluate them on their approach as well as their ability to deliver a container-native solution.
- Get started with Serverless & Containers with OpenFaaS