 What is the name of that well and what is the name of this well? That's right. Dad's got to go. Thanks, bud. Bye. Hi. I'm Scott Johnston, CEO of Docker and welcome to DockerCon 2020. This year's DockerCon is an all virtual event with more than 60,000 members of the Docker community joining from around the world. And with the global shelter in place policies, we're excited to offer a unifying, inclusive virtual community event in which anyone and everyone can participate from their home. As a company, Docker has been through a lot of changes since our last DockerCon last year. The most important starting last November is our refocusing 100% on developers and development teams. And as part of that refocusing, one of the big challenges we've been working on is how to help development teams quickly and efficiently get their app from code to cloud. And wouldn't it be cool if developers could quickly deploy to the cloud right from their local environment with the commands and workflow they already know? We're excited to give you a sneak preview of what we've been working on. And rather than slides, we thought we'd jump right into the product. Joining me to demonstrate some of these cool new features is Anka Yardake, one of our engineers here at Docker, working on Docker Compose. Hello, Anka. Hello. We're going to show how an application development team collaborates using Docker desktop and Docker Hub, and then deploys the app directly from the Docker command line to the clouds in just two commands. A development team would use this to quickly share functional changes of their app with the product management team, with beta testers, or their development teams. Let's go ahead and take a look at our app. Now, this is a web app that randomly pulls words from the database and assembles them into sentences. You can see it's a pretty typical three-tier application with each tier implemented in its own container. We have a front-end web service, a middle tier, which implements the logic to randomly pull the words from the database and assemble them, and a back-end database. And here you can see the database uses the Postgres official image from Docker Hub. Now, let's first run the app locally using Docker command line and the Docker engine in Docker desktop. We'll do a Docker Compose up. And you can see that it's pulling the containers from our Docker organization account, Word Smith, Inc. Now that it's up, let's go ahead and look at local host. And we'll confirm that the application is functioning as desired. So there's one sentence. Let's pull. And now you can indeed see that we are pulling random words and assembling into sentences. Now, you can also see, though, that the look and feel is a bit dated. And so Anka is going to show us how easy it is to make changes and share them with the rest of the team. Anka, over to you. Thank you. So I have the source code of our application on my machine, and I have updated it with the latest team from DockerCon 2020. So before committing the code, I'm going to build the application locally and run it to verify that indeed the changes are good. So I'm going to build with Docker Compose the image for the web service. Now that the image has been built, I'm going to deploy it locally with Compose up. We can now check the dashboard in Docker Desktop that indeed our containers are up and running. And we can access, we can open in the web browser the endpoint for the web service. So as we can see, we have the latest changes in for our application. So as you can see, the application has been updated successfully. So now I'm going to push the image that I have just built to my organization's shared repository on Docker Hub. So I can do this with Docker Compose push web. Now that my the image has been updated in Docker in the Docker Hub repository, or my teammates can access it and check the changes. Excellent. Well, thank you, Anka. Now, of course, in these times, video conferencing is the new normal. And as great as it is, video conferencing does not allow users to actually test the application. And so to allow us to have our app be accessible by others outside organizations such as beta testers or others, let's go ahead and deploy it to the cloud. Sure, we can do this by employing context. Docker context is a mechanism that we can use to target different platforms for deploying containers. The context will hold information as the endpoint for for the platform, and also how to authenticate to it. So I'm going to list the context that I have set locally. As you can see, I have I'm currently using the default context that is pointing to my local Docker engine. So all the commands that I have issued so far were targeting my local engine. Now, in order to deploy the application on a cloud, I have an account in Microsoft in the Azure cloud, where I have no resource running currently. And I have created for this account, dedicated context that will hold the information on how to connect it to it. So now all I need to do is to switch to this context with Docker context use and the name of my cloud context. So all the commands that I'm going to run from now on are going to target the cloud platform. So we can also check very more simpler in a simpler way, we can check the running containers with Docker PS. So as we see no container is running in my cloud account. Now to deploy the application, all I need to do is to run a Docker compose app. And this will trigger the deployment of my application. Thanks, Anka. Now notice that Anka did not have to move the compose file from Docker desktop to Azure. Notice she had to make any changes to the Docker compose file. And nor did she change any of the containers that she and I were using locally in our local environments. So the same compose file, same images run locally and up on Azure without changes. While the app is deploying to Azure, let's highlight some of the features in Docker hub that helps teams with remote first collaboration. So first, here's our teams account, wordsmithink. And you can see the updated container sentences web that Anka just pushed a couple minutes ago. As far as collaboration, we can add members using their Docker ID or their email. And then we can organize them into different teams depending on their role in the application development process. So, and then once they're organized into different teams, we can assign them permissions so that teams can work in parallel without stepping on each other's changes accidentally. For example, we'll give the engineering team full read, write access. Whereas the product management team will go ahead and just give read only access. So this role based access control is just one of the many features in Docker hub that allows teams to collaboratively and quickly develop applications. Okay, Anka, how's our app doing? Our app has been successfully deployed to the cloud. So we can easily check either the Azure portal to verify the containers running for it, or simpler, we can run a Docker PS again to get the list with the containers that have been deployed for it. In the output from the Docker PS, we can see an endpoint that we can use to access our application in the web browser. So we can see the application running in clouds, it's really up to date. And now we can take this particular endpoint and share it within our organization such that anybody can have a look at it. That's cool, Anka. We showed how we can deploy an app to the cloud in minutes in just two commands and using commands that Docker users already know. Thanks so much. In that sneak preview, you saw a team developing an app collaboratively with a tool chain that includes Docker desktop and Docker hub. And simply by switching Docker context from their local environment to the cloud, deploy that app to the cloud to Azure without leaving the command line, using Docker commands they already know. And in doing so, really simplifying for development team getting their app from code to cloud. And just as important, what you did not see was a lot of complexity. You did not see cloud specific interfaces, user management or security. You did not see us having to provision and configure, compute, networking and storage resources in the cloud. And you did not see infrastructure specific application changes to either the compose file or the Docker images. And by simplifying away that complexity, these new features help application development teams quickly iterate and get their ideas, their apps from code to cloud. And helping development teams build, share and run great applications is what Docker is all about. Now Docker is able to simplify for development teams getting their app from code to cloud quickly as a result of standards, products and ecosystem partners. It starts with open standards for applications and application artifacts and active open source communities around those standards to ensure portability and choice. Then, as you saw in the demo, the Docker experience delivered by Docker desktop and Docker hub simplifies the team's collaborative development of applications. And together with ecosystem partners provides every stage of an application development tool chain. For example, deploying applications to the cloud in two commands, what you saw in the demo, that's an extension of our strategic partnership with Microsoft, which we announced yesterday. And you can learn more about our partnership from Amanda Silver from Microsoft later today, right here at DockerCon. Another tool chain stage, the capability to scan applications for security vulnerabilities, that's a result of our partnership with Sneak, which we announced last week. You can learn more about that partnership from Peter McKay, CEO of Sneak, again later today, right here at DockerCon. A third example, a development team can automate the build of container images upon a simple git push as a result of Docker hub integrations with GitHub and Elassian Bitbucket. And as a final example of Docker and the ecosystem helping teams quickly build applications, together with our ISV partners, we offer in Docker hub over 500 official and verified publisher images of ready to run Dockerized application components, such as databases, load balancers, programming languages, and much more. Of course, none of this happens without people. And I would like to take a moment to thank four groups of people in particular. First, the Docker team, past and present. We've had a challenging 12 months, including a restructuring and then a global pandemic. And yet their support for each other and their passion for the product, this community, and our customers has never been stronger. We thank our community. Docker wouldn't be Docker without you. And whether you're one of the 50 Docker captains, the almost 400 meetup organizers, the thousands of contributors and maintainers, every day you show up, you give back, you teach, and you support. We thank our users, more than 6.5 million developers who have built more than 7 million applications and are then sharing those applications through Docker hub at a rate of more than 1.5 billion polls per week. Those apps are then run on more than 44 million Docker engines. And finally, we thank our customers, the over 18,000 Docker subscribers, both individual developers and development teams from startups to large organizations, 60% of which are outside the United States. And they span every industry vertical from media to entertainment to manufacturing, healthcare, and much more. Thank you. Now, looking forward, given these unprecedented times, we would like to offer a challenge. While it would be easy to feel helpless amidst this global pandemic, the challenge is for us as individuals, and as a community to instead see and grasp the tremendous opportunities before us to be forces for good. For starters, look no further than the pandemic itself. In the fight against this global disaster, applications and data are playing a critical role. And the Docker community quickly recognized this and rose to the challenge. There are over 600 COVID-19 related publicly available projects on Docker hub today, from data processing to genome analytics to data visualization. Folding at home, the distributed computing project for simulating protein dynamics is also available on Docker hub, and it uses spare compute capacity to analyze COVID-19 proteins to aid in the design of new therapies. And right here at DockerCon, you can hear how Clemente Beando and his company, Engineering, Ingegneria Informatica, are using Docker in the fight with COVID-19 in Italy every day. Now, in addition to fighting the pandemic directly, as a community, we also have an opportunity to bridge the disruption the pandemic is wreaking. It's impacting us at work and at home in every country around the world and every aspect of our lives. For example, many of you have a student at home whose world is going to be very different when they return to school. As employees, all of us have experienced the stresses from working from home, as well as many of the benefits. And in fact, 75% of us say that going forward, we're going to continue to work from home, at least occasionally. And of course, one of the biggest disruptions has been job losses over 35 million in the United States alone. And we know that's affected many of you. And yet your skills are in such demand and so important now more than ever. And that's why here at DockerCon, we want to try to do our part to help. And we're promoting this hashtag on Twitter, hashtag DockerCon jobs, where job seekers and those offering jobs can reach out to one another and connect. Now, a pandemic's disruption is accelerating the shift of more and more of our time, our priorities, our dollars from offline to online, to hybrid and even online only ways of living. We need to find new ways to collaborate, new approaches to engage customers, new modes for education and much more. And what is going to fill the needs created by this acceleration from offline to online, new applications. And it's this need, this demand for all these new applications that represents a great opportunity for the Docker community of developers. The world needs us needs you developers now more than ever. So let's seize this moment. Let us on our teams go build, share and run great new applications. Thank you for joining me today. And let's have a great DockerCon.