DockerCon is rolling full steam ahead these days in Copenhagen, and Praqma is there with an awesome pack of consultants. Follow this post to get the latest update from this cool event.
“This blog has multiple authors and is updated continuously, during the conference - stay tuned - keep coming back”.
Here we are - DockerConEU has come to town. A group of Praqmates have found their way to DockerCon this morning, taking place at Bella Center, not more than 10 minutes from Praqma’s Copenhagen office. Some of us are here to man our booth - or rather the Atlassian booth which is our home for the day as we are not only Docker partners, but Atlassian partners as well. The rest of us are here to keep up to date with what is cooking in the Docker world, hear real world case stories and learn other things that can help us in our consultant work.
We kick of with a quick visit to the nice breakfast buffet - all the while trying to meet up with friends and customers via intermittent “we are at this table in that corner” phonecalls.
Before we notice time passing, the staff is walking around with small bells indicating that it is time to move towards the main keynote hall.
And the keynote kicks off with a cartoon in the classic Monty Pythons flying circus style celebrating the power of Docker and making fun of legacy systems.
Steve Singh takes the stage, new to the Docker community comming from a job in SAP, it must be a rough change in crowd and approach. To start the largest conference outside of the US, Steve takes off from the Danish word “hygge” or in English, pronounced “hugga”. Binding that one word into the the Docker community was one of the things he wanted as a take-away from the Copenhagen vibe.
Docker is one of the newest technologies in the professional scene, and yet still 10 million members strong. It’s the epicenter of the changes in IT, decentralization, virtualisation, isolation etc. And that makes people uncomfortable. Because all successful companies have legacy. Legacy that have been their foundation for success, but also inhibits them from becoming more successful.
All companies are becoming software companies. “What’s the role of a car manufacture, when we have fully autonomous cars?” The answer is software. Companies are rapidly changing from being hardware manufactures to being software companies that also makes hardware.
We want to help the companies moving forward, by still leveraging their legacy efforts. Like the song from Daft Punk “Harder, better, faster, stronger”.
Docker still puts a lot of emphasis on the open part of the concept of open source. Without all the contributors on the whole environment of Docker, they would never have become the leader in container solutions.
The whale gets a rudder
The day starts really well with coffee from the jfrog cafe, where a barista in a green artifactory T-shirt predicts my choice of coffee and brews it before I even placed my order - very efficient and quite magical. As impressive as that was, it pales compared to the awe at the main keynote, when the speaker presented a long coming upgrade to the container whale…
Straight into the opening keynote the Docker team announced that there would no longer be a dilemma when choosing orchestration tools, no. Kubernetes has a huge community and has earned the love of many developers, so now Kubernetes is natively supported by the Docker platform. This means the docker toolstack comes with a full blown version of Kubernetes straight out of the box. It’s not a “light” version, not a “wrapper”, no. A full, deeply integrated version of Kubernetes integrated into directly into the toolstack.
The Docker cloud dashboard also got the upgrade. Swarm is not the only thing you can control on Docker cloud, Kubernetes got its own control panel and full set of tools and dashboard.
“This is an exciting time for boring infrastructure” - Tim Hockin
I simply cannot disagree.
“Play with Docker” - PWD Inside & Out
The first session of the day in the Community Theater track has no description in the schedule, but that won’t stop me from going.PWD is a Docker playground and very useful for interactive training courses and playing around.
New features in PWD:
- File uploads (with drag & drop)
- Templated sessions
- SSH access
- Windows containers (& platform moved from AWS to Azure)
Nice demo of starting up Windows containers in PWD, and setting up a hybrid swarm cluster with a Windows and a Linux node. They have worked hard to gain same speed in Windows containers running on real VM’s as with Linux version running “Docker in Docker”.
The second demo starts up a Microsoft IIS server. They explain how they figured out how to handle networking on the Windows side. “It is messy, but the good thing is that we have done it for you”.
It seems that PWD is growing fast from a small hacky tutorial playground into a strong platform for advanced multiplatform workshops.
Learning Docker from Square One
hy am I (Jan Krag here) finding myself at a “very basic Docker” talk? Because they promise to talk about how to teach beginners Docker, and that is something that is dear to my heart, mostly in the context of our Continuous Delivery Academy, where Praqma teaches hundreds of students basic Continuous Delivery tooling, including Docker every summer.
Chloe Condon talks about her first experience with Docker and meeting the Docker community, then launches into a Docker demo. The demo is about a simple Flask sample app and Chloe start showing the Dockerfile, building it and running the app.
Following the first run, Chloe demoes running the same app with a compose file.
“It spits out this funny long number that looks a bit like my dad’s wifi password :-)”
After the demo, comes the explanation. Images and containers likened to a Python class and an instance of said class, then as a different metaphor Image = DVD, Container = DVD player.
Let’s address the frequent question:
“So, a container is a lightweight VM, right?”
Think of VM’s like a house, while containers are like an apartment building. A house has its own infrastructure, protection from unwanted guests and so on. Apartments share infrastructure, come in many sizes - you only rent what you need.
“Docker is not a virtualization technology, it’s an application delivery technology” - Mike Coleman
Chloe shows a picture of herself in Shrek the musical: “My life was very different 4 years ago”
Docker layers likened to pizzas. Base layer of dough, then cheese. If you want a pepperoni pizza, just add pepperoni to the base images - no need to bake a whole new pizza.
… that you need to optimize…
- should be ephemeral
- no unnecessary packages
- 1 container = 1 concern
- minimal number of layers
Chloe followed this up with a quick dive into Dockerfiles and the most important commands. After explaining volumes, she even manages to quickly introduce Docker compose which her initial demo also used.
News from the deep sea mammal
I am always curious to see what’s next in the wide world of technology. New technologies pop up every day and make the life of developers easier. One of the new and really hot topics is Kubernetes support for the Docker toolstack, and this techtalk dives deeper into the Kubernetes enabled deep sea mammal.
There is a lot of new “stuff” in the enterprise version of Docker (Docker EE) with something called “Secure Supply Chain”, and enterprise orchestration, security checks and a new dashboard for UCP. From the presentation it seems like they really want do draw serious attention from the enterprise world, who is still not convinced that a bunch of small containers can perform as well as their battlebot of a monolithic application, where “legacy” means “production hardened”.
The community edition is certainly not left behind either. Support for stacks, where all versions of docker-compose can be used as deployment manifests to Kubernetes. Rollback, logs, scaling and updates etc. Nothing is left behind. Other than Linux support. Linux is not supported yet, but straight ahead on their roadmap you will find it. And for Mac and Windows it is currently in beta, so you will have to sign up.
On a finishing note I must add that during these conferences, new terms often pop up. At another conference I heard Scott Hanselman pronouncing ssh as “shush”
Just “shush” into your VM
This year, it’s Vivek Saraswats take on kubectl pronounced as “kube cuddle”
Use “kube cuddle” to access your pods
I will most certainly think of that every time I will be using kube-cuddle. /Simon
Rock Stars, Builders, and Janitors: You’re Doing it Wrong
Alice Goldfuss, Site Reliability Engineer at our very own GitHub and self proclaimed Systems Sorceress
After the first five seconds of her overall brilliant talk one thing came to mind. Energy. This talk was half entertainment, half really good arguments for the cause of tearing down silos. For the benefit of all. This is how making DevOps work should be!
“Ladies and gentlemen, we have a problem.”
The problem we have are the three archetypes found in an IT company:
Rockstar: We all have them, the “Oh my god, I have this amazing idea, just deploy XYZ to production now and every problem we have is solved!” kind of person. They are the driving force of the company, but left unchecked, they are really hazardous. Having a team of only rockstars will leave a trail of breaks and instability.
Builders: They are your resident doomsayers. They want a third monitoring system, just for the sake of force majeure and in the case that everything breaks at once! They harden the applications, and stabilizes infrastructure. Without them, everything will break, but having only them will make the company stop making new things.
Janitor: Janitor have to do so much with so little. They are the ones getting paged during the night, patching an obscure server and go to bed again, only to wait for the next paging. They are resistant to change, and will fix a problem, even if it requires breaking a beautiful automated setup by manually ssh’ing in to the server. They are the ones who need to fix things other people made.
So we need them all, but in a balanced way, to keep each other in check. Alice posted a small survey prior to the talk, getting 177 respondents about their work:
- 47,9% are Rockstars
- 55,2 % Want to be doing it
- 19,7 % are builders
- 35,3 % want to be builder
- 32,5% are janitors
- 9,5% wants to be doing that
And to top that, 49,1% of us think that the distribution of work between teams in the same organization is unfairly distributed.
Janitors will always have a shit life, and not that many wants to be them. People get stuck. “It’s a network task, give it to Tim”. But maybe Tim does not want to be the network guy anymore. We need to be able to rotate and explore to drive curiosity and fueling energy. What we have right now is silos. And silos makes people only care about their slice of the kingdom. We want to get to a better state.
So how do we break the cycle?
Everyone else’s problems are your problems too. So we want everyone to do everything.
Cut up the silos, making T shaped people. 4 engineers in four weeks: 1 janitor 1 builder 2 rockstar
And by all means, please take care of your technical debt!
“So where do I go to start?!”
Ops team! They want to be janitors and builders.
Ask them three questions:
- What are you worried about? - Janitor tasks
- What can we do better? - Builder tasks
- What do you want to add? - Rockstar tasks
Devs needs the same questions afterwards. And they need to be janitors in their own projects.
So we still need Rockstars, Builders and Janitors, but we need them to work together in the same teams, and we need them to be roles, not people.
Machine Learning pipelines with Docker
The Community Theater is the next place where I find myself preparing to hear more about Docker. This time the topic is more mainstream and does not dive into specifics, but instead touches some familiar areas: Pipelines, and now with machine learning as icing.
Machine learning have existed for a long time, and now more than ever we see the influence it has on society, self-driving cars, voice interfaces, smart assistants etc.
The speaker starts by asking: “why machine learning?” and answers it with a solid:
Data is the only path to commercial truth.
And with huge datasets we reach a point where regular, or even advanced SQL queries simply cannot answer our questions.
Data is the new bacon, Machine learning is the new oil.
With data as the source of truth, we want more of it and machine learning seems to be the one thing with a stomach for such capacity.
An emphasis is made when addressing ML in containers. It is no longer difficult to share and deploy ML models. In a container, they fit snugly into data processing pipelines, where everything is exposed via an APIs. A technology called Machinebox, does exactly this. They provide containers with trained models for sentiment analysis, image analysis etc. You can pull them and use them in your own data processing and in time exchange them with your own containerized models.
It’s always too early until, until it’s too late.
Using ML in your own apps is no longer a mathematical journey over a monolithic mountain top. It’s just a ride with a whale.
Becoming a Gopher - accidental gopher
Ashley kicks in the door with light humor and a few funny quotes. This is the story of her journey, to becoming an open source contributor and an accidental gopher. For those who do not know what a gopher is, it is a person writing golang.
I get the feeling that this is one of those talks, purely aimed to inspire people. Encouragement is always good. Imposter syndrome and low self-esteem should not prevent anyone from coding or contributing.
What’s the difference between an artist and a pizza.. a pizza can feed a family of four, an artist can not!
As a middle-aged artist and photographer, she starts exploring software development by creating websites for other clients in the same business. As she dives deeper into software development, she feels the steep learning curve, as she so solemnly puts it: “I had to google the words I just googled” Terminology is not easy, especially since most software terms can be boiled down to TLAs.
Open Source is Community
Her talk takes an interesting turn when she addresses the world of open source, and I think this is where the best bets can be found. You do not do open source just because you use open source, or have your projects hosted on GitHub.
Open source is about contributing and giving back to the hand that feeds you. As she puts it “nobody got time, sorry, make time it’s open source.. just contribute”
She is right, all the hours spent by other developers on that code you borrowed on GitHub, is money and time saved for you, so spend at least half the time they used, giving back to the community. As she says “a small contribution is better than no contribution”.
We are a community of coders, but if all we do is code, then we’ve lost the community.
She ends the talk with an encouragement to everyone afraid to contribute. People just pretend that they know everything, but in fact nobody does, just trust yourself and make a small contribution, no one will be sad about that.
What’s happening the following day at DockerCon?
Follow all our live updates here. Stay tuned!