Top 5 Blog Post of 2018: Play with Kubernetes

All this week, we have been bringing you the top 5 blog posts of 2018. Now for #3 on top 5 list – our blog post on Play with Kubernetes. Following the success of Play with Docker, earlier this year, we gave you the ability to learn Kubernetes from the convenience of our training site. Continue reading to learn more…
 
Every month for the last year, thousands of people have used Play with Docker and the accompanying hands-on Play with Docker Classroom training site. These sites allow you to use and learn Docker entirely within your own browser, without installing anything. Last summer, we quietly launched the companion site Play with Kubernetes, to give people a full command line while learning Kubernetes on the command line. And today we’re launching a new Kubernetes training site, the Play with Kubernetes Classroom.
The Play with Kubernetes Classroom is a workshop environment just like the Play with Docker Classroom. We currently have an extensive Kubernetes workshop originally based on Jérôme Petazzoni’s Container Training Kubernetes workshop. But instead of doing it all locally or setting up VMs in the cloud, you can now run through the workshop entirely in the browser.

Like the Play with Docker Classroom, we’ll be curating contributions of additional labs from the community. So give Kubernetes in your browser a try, and then come on over to the Play with Kubernetes repository to share your own tutorials with the community.

Check out the Play with Kubernetes Classroom
Try Kubernetes in Docker Enterprise Edition

Try Kubernetes in the browser with https://training.play-with-kubernetes.comClick To Tweet

The post Top 5 Blog Post of 2018: Play with Kubernetes appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Top 5 Blog Post of 2018: Docker Enterprise 2.0 with Kubernetes

Day 2 of our top blog posts of 2018 and coming in at Number 4 is the launch of Docker Enterprise 2.0 (formerly Docker Enterprise Edition). Docker’s industry-leading container platform is the only platform that simplifies Kubernetes and manages and secures applications on Kubernetes in multi-Linux, multi-OS and multi-cloud customer environments. To learn more about our Docker Enterprise, read on…
 
 
We are excited to announce Docker Enterprise Edition 2.0 – a significant leap forward in our enterprise-ready container platform. Docker Enterprise Edition (EE) 2.0 is the only platform that manages and secures applications on Kubernetes in multi-Linux, multi-OS and multi-cloud customer environments. As a complete platform that integrates and scales with your organization, Docker EE 2.0 gives you the most flexibility and choice over the types of applications supported, orchestrators used, and where it’s deployed. It also enables organizations to operationalize Kubernetes more rapidly with streamlined workflows and helps you deliver safer applications through integrated security solutions. In this blog post, we’ll walk through some of the key new capabilities of Docker EE 2.0.
Eliminate Your Fear of Lock-in
As containerization becomes core to your IT strategy, the importance of having a platform that supports choice becomes even more important. Being able to address a broad set of applications across multiple lines of business, built on different technology stacks and deployed to different infrastructures means that you have the flexibility needed to make changes as business requirements evolve. In Docker EE 2.0 we are expanding our customers’ choices in a few ways:

Multi-Linux, Multi-OS, Multi-Cloud – Most enterprise organizations have a hybrid or multi-cloud strategy and a mix of Windows and Linux in their environment. Docker EE is the only solution that is certified across multiple Linux distributions, Windows Server, and multiple public clouds, enabling you to support the broadest set of applications to be containerized and freedom to deploy it wherever you need.
Choice of Swarm or Kubernetes – Both orchestrators operate interchangeably in the same cluster meaning IT can build an environment that allows developers to choose how they want to have applications deployed at runtime. Teams can deploy applications to Swarm today and migrate these same applications to Kubernetes using the same Compose file. Applications deployed by either orchestrator can be managed through the same control plane, allowing you to scale more efficiently.

Docker EE Dashboard with containers deployed with both Swarm and Kubernetes
Deploying to Kubernetes via the admin UI
Manage via native Kubernetes CLI commands
Gain Operational Agility
Docker is well-known for democratizing containers for developers everywhere. In a similar manner, Docker Enterprise Edition is focused on making the management of a container environment very intuitive and easy for infrastructure and operations teams. This focus on the operational experience carries over to managing Kubernetes. With Docker EE 2.0, you get simplified workflows for the day-to-day management of a Kubernetes environment while still having access to native Kubernetes APIs, CLIs, and interfaces.

Simplified cluster management tasks -Docker EE 2.0 delivers easy-to-use workflows for the basic configuration and management of a container environment, including:

Single line commands to add new nodes to a cluster
One-click high availability of the management plane
Easy access to consoles and logs
Secure default configurations

 

Secure application zones – One way that Docker helps you scale is with efficient  multi-tenancy that doesn’t require building new clusters. By integrating with your corporate LDAP and Active Directory systems and setting resource access policies, you can get both logical and physical separation for different teams within the same cluster. For a Kubernetes deployment, this is a simple way to align Namespaces and nodes.

Enhanced Layer 7 Routing for Swarm – This release of Docker EE 2.0 also includes new enhancements for Layer 7 routing and load balancing. Based on the new Interlock 2.0 architecture which provides a highly scalable and highly available routing solution for Swarm, you can learn more about these enhancements here.
Kubernetes conformance – The streamlined operational workflows for managing Kubernetes are abstractions that run atop a full-featured and CNCF-conformant Kubernetes stack.  All core Kubernetes components and their native APIs, CLIs and interfaces are available to advanced users seeking to fine tune and troubleshoot the orchestrator.

Build a Secure, Global Supply Chain
Containers provide improved security through greater isolation and smaller attack surfaces, but delivering safer applications also requires looking at how these applications were created. Organizations need to know where the applications came from, who has had access to them, if they contain known vulnerabilities and if it’s approved for production. Docker EE 2.0 is the only solution that delivers a policy-based secure supply chain that is designed to give you governance and oversight over the entire container lifecycle without slowing you down.

Secure supply chain for Swarm and Kubernetes – With Docker EE 2.0, you can set policies around image promotions to automate the process of moving an application through test, QA, staging, and production. For example, you can set a policy around image vulnerability scanning results that only promotes clean images to production repositories. Additionally with Docker EE 2.0, administrators can enforce rules around which applications are allowed to be deployed. Only images that have been signed off by the right tools or teams will be allowed to run in production. These are automated processes that enforce governance without adding any manual bottlenecks to the delivery process. Learn more about these capabilities in Part 1 and Part 2 of this blog series.

Secure supply chain for globally distributed organizations – Many Docker EE customers are multinational corporations with offices and data centers located around the world. With Docker EE 2.0 we are introducing a number of features that allow these global organizations to maintain a secure and globally-consistent supply chain.

Centralized Image Repository – Some organizations want to maintain one source of truth for all applications. They want a centralized private image repository for their global organizations. With Docker EE 2.0, you can connect multiple EE clusters to a single, common private registry with a common set of security policies built in.
Remote Office Access – Many organizations have development teams that are not in the same location as the registry. To ensure that these developers can quickly download images from their location, Docker EE 2.0 includes an Image Caching capability to create local caches of the repository content. Caching extends the secure access controls and digital signatures to these remote offices to ensure no breaks in the supply chain.
Multi-site Availability and Consistency – Alternatively, some organizations wish to have separate registries for different office locations – possibly one for North America, one for Europe, one for Asia. But they also want to make sure that they are using common images. With the new Image Mirroring capability, organizations can set policies that “push” and “pull” images from one registry to another. This also means that if a certain region goes down, copies of the same images are available in the other registries.

How to Get Started
Docker EE 2.0 is a major milestone for enterprise container platforms. Designed to give you the broadest choice around orchestrators, application types, operating systems, and clouds and supporting the requirements of global organizations, Docker EE 2.0 is the most advanced enterprise-ready container platform in the market and it’s available to you today!
To learn more about this release:

Register for our upcoming Virtual Event featuring Docker Chief Product Officer, Scott Johnston, and Sr. Director of Product Management, Banjot Chanana, to hear more about how our enterprise customers are leveraging Docker EE, see demos of EE 2.0 and learn how Docker can help you on your containerization journey.
Try it for yourself in our free, hosted trial. Explore the advanced capabilities described in this blog in just 30 minutes.
Read more about Docker Enterprise Edition 2.0 or access the documentation.
Register for DockerCon 2018 in San Francisco (June 12-15) to hear from Docker experts and customers about their containerization journey.

Announcing #Docker Enterprise Edition 2.0 – the most advanced enterprise-ready container platform!Click To Tweet

The post Top 5 Blog Post of 2018: Docker Enterprise 2.0 with Kubernetes appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Top 5 Post: Improved Docker Container Integration with Java 10

As 2018 comes to a close, we looked back at the top five blogs that were most popular with our readers. For those of you that had difficulties with memory and CPU sizing/usage when running Java Virtual Machine (JVM) in a container, we are kicking off the week with a blog that explains how to get improved Docker container integration with Java 10 in Docker Desktop ( Mac or Windows) and Docker Enterprise environments.

Many applications that run in a Java Virtual Machine (JVM), including data services such as Apache Spark and Kafka and traditional enterprise applications, are run in containers. Until recently, running the JVM in a container presented problems with memory and cpu sizing and usage that led to performance loss. This was because Java didn’t recognize that it was running in a container. With the release of Java 10, the JVM now recognizes constraints set by container control groups (cgroups). Both memory and cpu constraints can be used manage Java applications directly in containers, these include:

adhering to memory limits set in the container
setting available cpus in the container
setting cpu constraints in the container

Java 10 improvements are realized in both Docker Desktop ( Mac or Windows) and Docker Enterprise environments.
Container Memory Limits
Until Java 9 the JVM did not recognize memory or cpu limits set by the container using flags. In Java 10, memory limits are automatically recognized and enforced.
Java defines a server class machine as having 2 CPUs and 2GB of memory and the default heap size is ¼ of the physical memory. For example, a Docker Enterprise Edition installation has 2GB of memory and 4 CPUs. Compare the difference between containers running Java 8 and Java 10. First, Java 8:
docker container run -it -m512 –entrypoint bash openjdk:latest

$ docker-java-home/bin/java -XX:+PrintFlagsFinal -version | grep MaxHeapSize
uintx MaxHeapSize := 524288000 {product}
openjdk version “1.8.0_162″

The max heap size is 512M or ¼ of the 2GB set by the Docker EE installation instead of the limit set on the container to 512M. In comparison, running the same commands on Java 10 shows that the memory limit set in the container is fairly close to the expected 128M:
docker container run -it -m512M –entrypoint bash openjdk:10-jdk

$ docker-java-home/bin/java -XX:+PrintFlagsFinal -version | grep MaxHeapSize
size_t MaxHeapSize = 134217728 {product} {ergonomic}
openjdk version “10” 2018-03-20

Setting Available CPUs
By default, each container’s access to the host machine’s CPU cycles is unlimited. Various constraints can be set to limit a given container’s access to the host machine’s CPU cycles. Java 10 recognizes these limits:
docker container run -it –cpus 2 openjdk:10-jdk
jshell> Runtime.getRuntime().availableProcessors()
$1 ==> 2

All CPUs allocated to Docker EE get the same proportion of CPU cycles. The proportion can be modified by changing the container’s CPU share weighting relative to the weighting of all other running containers. The  proportion will only apply when CPU-intensive processes are running. When tasks in one container are idle, other containers can use the leftover CPU time. The actual amount of CPU time will vary depending on the number of containers running on the system. These can be set in Java 10:
docker container run -it –cpu-shares 2048 openjdk:10-jdk
jshell> Runtime.getRuntime().availableProcessors()
$1 ==> 2

The cpuset constraint sets which CPUs allow execution in Java 10.
docker run -it –cpuset-cpus=”1,2,3″ openjdk:10-jdk
jshell> Runtime.getRuntime().availableProcessors()
$1 ==> 3

Allocating memory and CPU
With Java 10, container settings can be used to estimate the allocation of memory and CPUs needed to deploy an application. Let’s assume that the memory heap and CPU requirements for each process running in a container has already been determined and JAVA_OPTS set. For example, if you have an application distributed across 10 nodes; five nodes require 512Mb of memory with 1024 CPU-shares each and another five nodes require 256Mb with 512 CPU-shares each. Note that 1 CPU share proportion is represented by 1024.
For memory, the application would need 5Gb allocated at minimum.
512Mb x 5 = 2.56 Gb
256Mb x 5 = 1.28 Gb
The application would require 8 CPUs to run efficiently.
1024 x 5 = 5 CPUs
512 x 5 = 3 CPUs
Best practice suggests profiling the application to determine the memory and CPU allocations for each process running in the JVM. However, Java 10 removes the guesswork when sizing containers to prevent out of memory errors in Java applications as well allocating sufficient CPU to process work loads.

Improved Docker Container Integration with @Java 10Click To Tweet

To learn more about Docker solutions for Java Developers:

Follow the Docker for Java Developer blog and videos series
Start a hosted trial
Sign up for upcoming webinars

The post Top 5 Post: Improved Docker Container Integration with Java 10 appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Docker Certified Containers From IBM

The Docker Certified Technology Program is designed for ecosystem partners and customers to recognize containers and plugins that excel in quality, collaborative support and compliance. Docker Certification gives enterprises an easy way to run trusted software and components in containers on Docker Enterprise with support from both Docker and the publisher.  
As cloud computing continues to transform every business and industry, developers at global enterprises and emerging startups alike are increasingly leveraging container technologies to accelerate how they build modern web, mobile and IoT applications.  
IBM has achieved certification of its flagship Db2 database, Websphere-Liberty middleware server and Security Access Manager products now available on Docker Hub. These Certified Containers enable developers to accelerate building cloud-native applications for the Docker Enterprise platform.  Developers can deploy these solutions from IBM to any on-premises infrastructure or public cloud.  They are designed to assist in the modernization of traditional applications moving from on-premises monoliths into hybrid cloud microservices.
These solutions are validated by both Docker and IBM and are integrated into a seamless support pipeline that provides customers the world-class support they have become accustomed to when working with Docker and IBM.
Check out the latest certified technology available from IBM on Docker Hub:

IBM Security Access Manager
IBM WebSphere Application Server Liberty
IBM Db2 Developer-C Edition  

Learn More:

Learn more about Docker Enterprise and get a free trial today
Check out a Docker event near you
Contact us with any questions
Apply as a Partner

 

Now Available: #Docker Certified Containers from @IBM. Learn more here: Click To Tweet

 
The post Docker Certified Containers From IBM appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Speak at DockerCon San Francisco 2019 – Call for Papers is Open

 
Whether you missed DockerCon EU in Barcelona, or you already miss the fun, connections and learning you experienced at DockerCon – you won’t have to wait long for the next one. DockerCon returns to San Francisco on April 29 and extends through May 2, 2019 and the Call for Papers is now open. We are accepting talk submissions through January 18th at 11:59 PST.  
Submit a Talk

Attending DockerCon is an awesome experience, but so is speaking at DockerCon – it’s a great way to get to know the community, share ideas and collaborate. Don’t be nervous about proposing your idea – no topic is too small or too big. And for some speakers, DockerCon is their first time speaking publicly. Don’t be intimidated, DockerCon attendees are all looking to level up their skills, connect with fellow container fans and go home inspired to implement new containerization initiatives. Here are some suggested topics from the conference committee:

“How To” type sessions for developers or IT teams
Case Studies
Technical deep dives into container and distributed systems related components
Cool New Apps built with Docker containers
The craziest thing you have containerized
Wild Card – anything and everything!
The impact of change – both for organizations and ourselves as individuals and communities.
Inspirational stories

Note that our attendees expect practical guidance so vendor sales pitches will not be accepted.
Accepted speakers receive a complimentary conference pass, speakers gift and participate in a networking reception. Additionally, they receive help preparing their session, access to an online recording of their talk and the opportunity to share their experience with the broader Docker community.
 

Want to speak at #DockerCon SF 2019? The call for papers is now open. Submit a talk today:Click To Tweet

The post Speak at DockerCon San Francisco 2019 – Call for Papers is Open appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Desigual Transforms the In-Store Customer Experience with Docker Enterprise

Desigual Transforms the In-Store Customer Experience with Docker Enterprise

 
At DockerCon Barcelona, we awarded Desigual with the first ever Rising Star Docker Customer Innovation Award. The Desigual team earned the award by building a brand new in-store shopping assistant application in just 5 months thanks to Docker Enterprise. The digital shopping assistant is already deployed at over 100 stores, and is being rolled out to all of Desigual’s 500-plus clothing stores worldwide in the coming months.
In this 2 minute video, Desigual gives the highlights of their story:

The Desigual team analyzed existing sales data and found that of lost in-store sales, 60 percent were because a particular size was out of stock, and 40 percent were because a product wasn’t available in the catalog.
They wanted to create a customer-first shopping experience that would stand out among retail clothing brands and help store associates recommend alternatives to customers. To do that, they needed to tie multiple elements together: Store point-of-sale (POS), the online catalog, mobile capability, and personal attention through the shopper profile.
Mathias Kriegel, IT Ops Lead and Cloud Architect, and Joan Anton Sances, Software Architect, discussed the project and why they selected Docker Enterprise in their presentation at DockerCon Barcelona 2018.
They selected Docker Enterprise because it gives them enterprise-grade support and has let them create a secure and reliable software pipeline. It also met their need for Swarm and Kubernetes support, along with multi-platform support since the application has both .NET and Java components.
Desigual has shifted software development to a DevOps mentality and can now roll out updates or new software much faster and more reliably, even with a sophisticated technology stack that includes TIBCO enterprise software, Java, .NET and Android mobile components.
While all of Docker’s customers are starting to change how their software development and deployment process works, Desigual’s innovative thinking and customer focus stands out. Congratulations to the Desigual team for winning our 2018 Rising Star Customer Innovation Award!
Check this out:

Watch a 2 minute video on how Desigual uses Docker Enterprise
Learn more about Docker Enterprise

Discover how @desigual transforms their in-store customer experience with #Docker Enterprise. @mathkrieg @jantonsgClick To Tweet

 
The post Desigual Transforms the In-Store Customer Experience with Docker Enterprise appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

KubeCon NA 2018 Wrap Up: Docker and the Kubernetes Community

 
 
Right on the heels of DockerCon Europe, the Docker team was excited to be a part of KubeCon in Seattle last week for great conversations and collaboration with the Kubernetes community. In addition to our commitment to delivering a simple, integrated experience with Kubernetes in our Docker Desktop and Docker Enterprise products, we’re also excited by our work with the community at the very foundation of Kubernetes with projects like containerd and Notary/TUF and to talk container standards with the members of the Open Container Initiative (OCI). KubeCon is an opportunity for project maintainers to explain the status and roadmap of projects, but also to meet face to face and collaborate with contributors to determine what is next for cloud native applications.
Giving Back to the Kubernetes Community
The Docker and Kubernetes communities have been working together closely since Kubernetes was announced at DockerCon 2014. In line with our commitment to continue to make containerization technology like Kubernetes easier to use: a few weeks ago we open sourced Docker Compose on Kubernetes, a project that provides a simple way to define cloud native applications with a higher-level abstraction, the Docker Compose file. Docker Compose is a tool for defining and running multi-container Docker applications is already used by millions of Docker users.
Docker is also working on solutions that address challenges that the broader Kubernetes community is facing as more applications embrace cloud-native design and more applications are distributed applications. As announced during DockerCon Europe, Docker and Microsoft are teaming up to deliver the Cloud Native Application Bundle (CNAB) specification – an open source, cloud-agnostic specification for packaging and running distributed applications. With CNAB, organizations can package Helm charts, Kubernetes YAML files and Docker Compose files in a single format that is easily shareable and distributed in Docker Hub and Docker Trusted Registry. The format also extends to things like Terraform and Ansible scripts and any number of other configuration and automation formats. Here is a video of CNAB in action.
In one of these very productive gatherings of maintainers at KubeCon, CNAB team members from Microsoft and Docker joined the OCI maintainer meeting to discuss CNAB joining OCI.

#KubeCon is not only about talks, but also a lot about face to face meetings between engineers: here @OCI_ORG team discussing @cnab_spec pic.twitter.com/3WqSjOrG1a
— chanezon (@chanezon) December 13, 2018
At the Heart of Kubernetes: containerd and Notary
Containerd
It’s been about 2 years since containerd was donated to CNCF and the project has had tremendous momentum in that short time. Today, containerd 1.2 is the industry-standard container runtime that can be used with different technologies including gVisor, Kata containers, Firecracker and Balena, and is extensible to various platforms through it’s plugin model. Containerd is being widely adopted by the major cloud platforms including Alibaba, AWS, Azure, GKE and IBM Cloud. We’re excited by the maturity and direction we’re headed in and looking forward to graduation of containerd within CNCF.
You can watch the Intro and Deep Dive sessions on containerd here:

Intro to containerd
Deep Dive on containerd

One thing I love about KubeCon is the impromptu maintainer meetings after talks: after the Intro to containerd talk, we all went to AWS office with @containerd and Firecracker maintainers from @Docker @awscloud @Microsoft @GCPcloud @alibaba_cloud @IBM to talk about Firecracker containerd integration. The AWS team demoed their firecracker-containerd proof of concept to check that their architecture was sound.

One thing I love about #KubeCon is impromptu maintainer meetings after talks: here at Amazon with @containerd & Firecracker maintainers from @Docker @awscloud @Microsoft @GCPcloud @alibaba_cloud @IBM to talk about Firecracker containerd integrationhttps://t.co/rlvAYOxBox pic.twitter.com/pSuDPWv4Ss
— chanezon (@chanezon) December 12, 2018
Notary with TUF
Docker has implemented The Update Framework (TUF) in Notary as a way to protect and sign your container images and secure your environment with Docker Hub or Docker Trusted Registry. Notary is also a project within CNCF with maintainers from many different companies and the framework can be extended to other use cases.

Yesterday in @CloudNativeFdn board meeting one topic that came up was that security should be an important focus for cncf: good example today #KubeCon @justincormack & Pr Cappos from @nyutandon present TUF and Notary. pic.twitter.com/O2HT3CWHuY
— chanezon (@chanezon) December 11, 2018
You can watch the session on Notary here:

Intro to TUF / Notary

Docker and Kubernetes: The Road Ahead
Docker is driving Kubernetes forward from two ends. We continue to invest and collaborate from the foundational side through projects like containerd and Notary and standards like OCI and CNAB. And we continue to drive adoption in the enterprise through easy-to-use tools like Docker Desktop and Docker Enterprise which package conformant Kubernetes distributions with Docker tooling. Docker will continue to collaborate with the Kubernetes community with a focus on making Kubernetes easier to use and accessible to a larger set of users.
Here are other sessions from KubeCon Seattle 2018 from the Docker team:

Building Container Images on Your Kubernetes Cluster with Knative Build with Gareth Rushgrove
How to Choose a Kubernetes Runtime with Justin Cormack
How Standards, Specifications and Runtimes Make for Better Containers with Patrick Chanezon (Docker), Chris Aniszczyk (The Linux Foundation/CNCF), Jeffrey Borek (IBM) and Rithu Leena John (CoreOS/Red Hat)

Had a great time presenting with these fine gentlemen @jeffborek @chanezon @cra at #kubecon2018! pic.twitter.com/cqdS36wkD0
— Rithu Leena John (@rithu_john) December 14, 2018

Securing Application Telemetry & Tracing with SPIFFE and Envoy with Sabree Blackmon

To learn more:

Docker Desktop is the easiest way to run Kubernetes on your laptop
Docker Enterprise is the easiest way to run Kubernetes in the Enterprise.

#KubeCon NA 2018 Wrap Up: #Docker and the Kubernetes CommunityClick To Tweet

The post KubeCon NA 2018 Wrap Up: Docker and the Kubernetes Community appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Introducing the New Docker Hub

Today, we’re excited to announce that Docker Store and Docker Cloud are now part of Docker Hub, providing a single experience for finding, storing and sharing container images. This means that:

Docker Certified and Verified Publisher Images are now available for discovery and download on Docker Hub
Docker Hub has a new user experience

 
Millions of individual users and more than a hundred thousand organizations use Docker Hub, Store and Cloud for their container content needs. We’ve designed this Docker Hub update to bring together the features that users of each product know and love the most, while addressing known Docker Hub requests around ease of use, repository and team management.
Here’s what’s new:
Repositories

View recently pushed tags and automated builds on your repository page
Pagination added to repository tags
Improved repository filtering when logged in on the Docker Hub home page

Organizations and Teams

As an organization Owner, see team permissions across all of your repositories at a glance.
Add existing Docker Hub users to a team via their email (if you don’t remember their of Docker ID)

New Automated Builds

Speed up builds using Build Caching
Add environment variables and run tests in your builds
Add automated builds to existing repositories

Note: For Organizations, GitHub & BitBucket account credentials will need to be re-linked to your organization to leverage the new automated builds. Existing Automated Builds will be migrated to this new system over the next few months. Learn more
 
Improved Container Image Search

Filter by Official, Publisher and Certified images, guaranteeing a level of quality in the Docker images listed by your search query
Filter by categories to quickly drill down to the type of image you’re looking for

 
Existing URLs will continue to work, and you’ll automatically be redirected where appropriate. No need to update any bookmarks.
Verified Publisher Images and Plugins
Verified Publisher Images are now available on Docker Hub. Similar to Official Images, these images have been vetted by Docker. While Docker maintains the Official Images library, Verified Publisher Images are provided by our third-party software vendors.
Verified Publisher Images and Plugins:

Are tested and supported on Docker Enterprise platform by verified publishers
Adhere to Docker’s container best practices
Pass a functional API test suite
Complete a vulnerability scanning assessment
Are provided by partners with a collaborative support relationship

Let us know what you think
We’ll be rolling out the new Docker Hub to users over time at https://hub.docker.com.
Have feedback on these updates? We’d love to hear from you. Let us know in this short survey.
The post Introducing the New Docker Hub appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Announcing the Docker Customer Innovation Awards

We are excited to announce the first annual Docker Customer Innovation Award winners at DockerCon Barcelona today! We launched the awards this year to recognize customers who stand out in their adoption of Docker Enterprise platform to drive transformation within IT and their business.
38 companies were nominated, all of whom have spoken publicly about their containerization initiatives recently, or plan to soon. From looking at so many excellent nominees, we realized there were really two different stories — so we created two award categories. In each category, we have a winner and three finalists.
 
 
Business Transformation
Customers in this category have developed company-wide initiatives aimed at transforming IT and their business in a significant way, with Docker Enterprise as a key part if it. They typically started their journey two or more years ago and have containerized multiple applications across the organization.

WINNER:

Societe Generale transformed how the bank develops its software by building a container platform for migrating thousands of its applications to the cloud.

 

FINALISTS:

Bosch built a global platform that enables developers to build and deliver new software solutions and updates at digital speed.

Liberty Mutual consolidated infrastructure and VMs significantly, paving the way for innovation and a multi-cloud future.

MetLife modernized hundreds of traditional applications, driving 66 percent cost savings and creating a self-funding model to fuel change and innovation. Cut new product time to market by two-thirds.

 
Rising Stars
Customers in this category are early in their containerization journey and have already leveraged their first project with Docker Enterprise as a catalyst to innovate their business — often creating new applications or services.

WINNER:

Desigual built a brand new in-store shopping experience app in less than 5 months to connect customers and associates, creating an outstanding brand and shopping experience.

FINALISTS:

BCG leverages Docker Enterprise to develop breakthrough analytics and machine-learning solutions for clients with BCG’s Source.ai offering.

Citizens Bank (Franklin American Mortgage) created a dedicated innovation team sparked cultural change at a traditional mortgage company, allowing it to bring new products to market in weeks or months.
The Dutch Ministry of Justice evaluated Docker Enterprise as a way to accelerate application development, which helped spark an effort to modernize juvenile custodian services from whiteboards and sticky notes to a mobile app.

We want to give a big thanks to the winners and finalists, and to all of our remarkable customers have started innovation journeys with Docker.
We’ve opened the nomination process for 2019 since we will be announcing winners at DockerCon 2019 on April 29-May 2. If you’re interested in submitting or want to nominate someone else, you can learn how here.

Announcing the winners of the #Docker Customer Innovation AwardsClick To Tweet

The post Announcing the Docker Customer Innovation Awards appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/

Simplifying Kubernetes with Docker Compose and Friends

Today we’re happy to announce we’re open sourcing our support for using Docker Compose on Kubernetes. We’ve had this capability in Docker Enterprise for a little while but as of today you will be able to use this on any Kubernetes cluster you choose.

Why do I need Compose if I already have Kubernetes?
The Kubernetes API is really quite large. There are more than 50 first-class objects in the latest release, from Pods and Deployments to ValidatingWebhookConfiguration and ResourceQuota. This can lead to a verbosity in configuration, which then needs to be managed by you, the developer. Let’s look at a concrete example of that.
The Sock Shop is the canonical example of a microservices application. It consists of multiple services using different technologies and backends, all packaged up as Docker images. It also provides example configurations using different tools, including both Compose and raw Kubernetes configuration. Let’s have a look at the relative sizes of those configurations:
$ git clone https://github.com/microservices-demo/microservices-demo.git
$ cd deployment/kubernetes/manifests
$ (Get-ChildItem -Recurse -File | Get-Content | Measure-Object -line).Lines
908
$ cd ../../docker-compose
$ (Get-Content docker-compose.yml | Measure-Object -line).Lines
174
Describing the exact same multi-service application using just the raw Kubernetes objects takes more than 5 times the amount of configuration than with Compose. That’s not just an upfront cost to author – it’s also an ongoing cost to maintain. The Kubernetes API is amazingly general purpose – it exposes low-level primitives for building the full range of distributed systems. Compose meanwhile isn’t an API but a high-level tool focused on developer productivity. That’s why combining them together makes sense. For the common case of a set of interconnected web services, Compose provides an abstraction that simplifies Kubernetes configuration. For everything else you can still drop down to the raw Kubernetes API primitives. Let’s see all that in action.
First we need to install the Compose on Kubernetes controller into your Kubernetes cluster. This controller uses the standard Kubernetes extension points to introduce the `Stack` to the Kubernetes API. You can use any Kubernetes cluster you like, but if you don’t already have one available then remember that Docker Desktop comes with Kubernetes and the Compose controller built-in, and enabling it is as simple as ticking a box in the settings.
To install the controller manually on any Kubernetes cluster, see the full documentation for the current installation instructions.
Next let’s write a simple Compose file:
version: “3.7”
services:
  web:
    image: dockerdemos/lab-web
    ports:
     – “33000:80″
  words:
    image: dockerdemos/lab-words
    deploy:
      replicas: 3
      endpoint_mode: dnsrr
  db:
    image: dockerdemos/lab-db
We’ll then use the docker client to deploy this to a Kubernetes cluster running the controller:
$ docker stack deploy –orchestrator=kubernetes -c docker-compose.yml words
Waiting for the stack to be stable and running…
db: Ready       [pod status: 1/1 ready, 0/1 pending, 0/1 failed]
web: Ready      [pod status: 1/1 ready, 0/1 pending, 0/1 failed]
words: Ready    [pod status: 1/3 ready, 2/3 pending, 0/3 failed]
Stack words is stable and running
We can then interact with those objects via the Kubernetes API. Here you can see we’ve created the lower-level objects like Services, Pods, Deployments and ReplicaSets automatically:
$ kubectl get all
NAME                       READY     STATUS    RESTARTS   AGE
pod/db-85849797f6-bhpm8    1/1       Running   0          57s
pod/web-7974f485b7-j7nvt   1/1       Running   0          57s
pod/words-8fd6c974-44r4s   1/1       Running   0          57s
pod/words-8fd6c974-7c59p   1/1       Running   0          57s
pod/words-8fd6c974-zclh5   1/1       Running   0          57s

NAME                    TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
service/db              ClusterIP      None            <none>        55555/TCP      57s
service/kubernetes      ClusterIP      10.96.0.1       <none>        443/TCP        4d
service/web             ClusterIP      None            <none>        55555/TCP      57s
service/web-published   LoadBalancer   10.102.236.49   localhost     33000:31910/TCP   57s
service/words           ClusterIP      None            <none>        55555/TCP      57s

NAME                    DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/db      1         1         1            1           57s
deployment.apps/web     1         1         1            1           57s
deployment.apps/words   3         3         3            3           57s

NAME                             DESIRED   CURRENT   READY     AGE
replicaset.apps/db-85849797f6    1         1         1         57s
replicaset.apps/web-7974f485b7   1         1         1         57s
replicaset.apps/words-8fd6c974   3         3         3         57s
It’s important to note that this isn’t a one-time conversion. The Compose on Kubernetes API Server introduces the Stack resource to the Kubernetes API. So we can query and manage everything at the same level of abstraction as we’re building the application. That makes delving into the details above useful for understanding how things work, or debugging issues, but not required most of the time:
$ kubectl get stack
NAME      STATUS      PUBLISHED PORTS   PODS     AGE      
words     Running     33000             5/5      4m
Integration with other Kubernetes tools
Because Stack is now a native Kubernetes object, you can work with it using other Kubernetes tools. As an example, save the as `stack.yaml`:
kind: Stack
apiVersion: compose.docker.com/v1beta2
metadata:
 name: hello
spec:
 services:
 – name: hello
   image: garethr/skaffold-example
   ports:
   – mode: ingress
     target: 5678
     published: 5678
     protocol: tcp
You can use a tool like Skaffold to have the image automatically rebuild and the Stack automatically redeployed whenever you change any of the details of your application. This makes for a great local inner-loop development experience. The following `skaffold.yaml` configuration file is all you need.
apiVersion: skaffold/v1alpha5
kind: Config
build:
 tagPolicy:
   sha256: {}
 artifacts:
 – image: garethr/skaffold-example
 local:
   useBuildkit: true
deploy:
 kubectl:
   manifests:
     – stack.yaml
The future
We already have some thoughts about a Helm plugin to make describing your application with Compose and deploying with Helm as easy as possible. We have lots of other ideas for helping to simplify the developer experience of working with Kubernetes too, without losing any of the power of the platform. We also want to work with the wider Cloud Native community, so if you have ideas and suggestions please let us know.
Kubernetes is designed to be extended, and we hope you like what we’ve been able to release today. If you’re one of the millions of Compose users you can now more easily move to and manage your applications on Kubernetes. If you’re a Kubernetes user struggling with too much low-level configuration then give Compose a try. Let us know in the comments what you think, and head over to GitHub to try things out and even open your first PR:

Compose on Kubernetes controller

#Docker Compose on Kubernetes is now open sourceClick To Tweet

The post Simplifying Kubernetes with Docker Compose and Friends appeared first on Docker Blog.
Quelle: https://blog.docker.com/feed/