Docker Desktop Extensions Every Developer Should Try

The world of software development is changing faster than ever. The need for faster release cycle times has led to the proliferation of virtualization technologies. Virtual machines (VMs) have been around for many years, but containers have outlived them recently because VMs are slow and not as lightweight as containers. With the popularity of microservices, containers have emerged as an excellent alternative to virtual machines for developing, testing and deploying applications in lightweight environments.

In comes Docker, an open-source technology that uses Linux containers to virtualize apps and other software processes so that they can run independently and more securely in another container as if they were on a different computer on the same device. There were programs.

Docker packages software applications into virtual containers so that they can be shipped, deployed, and run quickly and efficiently. These containers are like virtual lockers for your application. They package your application and its dependencies so that it can be shipped anywhere and run transparently. This means you can get the same user experience from your development, test, staging or production systems.

docker extension

Docker announced Docker extensions at DockerCon 2022. The idea of ​​Docker extensions is to help developers extend their capabilities using third-party tools just like plugins. You can enable the extension, available from the Extensions tab on the Docker desktop, with a single click. Extensions improve developer productivity and streamline workflow. Developers can use their favorite tools from a centralized location, i.e. Docker Desktop.

Before exploring various interesting extensions, go to your Docker desktop and enable the extension from preferences.

Today, we will look at some essential Docker extensions for developers to speed up their software development.

DroneCI

We all know that Continuous Integration (CI) is the first official step in doing DevOps. When developers write code, they store it in a source control management tool like Git. Then, they test and build the code with the help of continuous integration tools. CI is an essential part of every DevOps approach. DroneCI is an open-source CI tool that is very easy to install and use. Now that we have this as an extension, you will be able to do CI from your laptop. All you need is a yml file to define your steps, and you’re done.

We have a simple Node.js application to work with our plugins. Clone the sample application.

kind: pipeline
type: docker
name: default
 
platform:
 os: linux
 arch: arm64
 
steps:
- name: message
  image: busybox
  commands:
  - echo “Hello Captain Canary”!
 
- name: test
  image: node
  commands:
  - npm install
  - npm test

You can install the Drone CI extension directly from the Docker Desktop Extensions tab.

Extension Marketplace

Once installed, click on Drone CI Extension and you will be presented with the dashboard below:

drone pipeline

Since we haven’t configured any pipelines yet, you should see a blank dashboard with no pipelines imported.

Click on ‘import pipeline’ To import your project. The extension will show you all the projects that have .drone.yml In them. Therefore, import a project from your local one to try.

To show you an example, I imported my simple-node-app project, which is a simple node.js application consisting of simple tests.

import pipeline

The next step is to run the pipeline, and for that, we need to add some simple settings that we will do after clicking the Run/Play button; You see the actions below:

run pipeline

Add required fields such as steps to run, a secret file if you have one (which you can specify in a . ) secret.txt file), an environment file, etc.

run

Once you run your application, you will see that the pipeline is executing.

executed pipeline

weekcluster

Working with Kubernetes can be overwhelming. Since there is a huge learning curve involved, developers put more time and effort into understanding this platform. It’s all worth it, but what if there are tools that assist developers and help them increase productivity?

vclusters is a tool that lets you create virtual clusters on top of any Kubernetes cluster. Instead of creating full blown clusters that can increase your cloud bill, vclusters are cheap, with the added benefits of multi-tenancy. This will benefit anyone who needs to set up various development and test configurations.

Make sure to enable Kubernetes from Docker Desktop Preferences.

kubernetes

The vcluster extension is readily available on the Docker Desktop Extensions tab and can be installed with a single click.

Extension Marketplace

Once the extension is installed, you will see a simple dashboard for creating virtual clusters.

new weekcluster

Then you can click oncreate new cluster, Name your cluster, fill in the required fields, and click ‘.to create,

create new wecluster

Once you fill in all the required fields, you will be able to see your cluster being created. After a while you see it moving.

Wecluster created

You can verify a running cluster using the vcluster CLI. The command to list your vclusters is:

weekcluster list

microx

Microx is an open-source platform to mock and test APIs and microservices. You can deploy mocks and experiment with your rest api locally. Now that the Docker extension is available, you can mock and test event-based APIs efficiently. The microx extension is readily available on the Docker desktop and can be easily installed with a single click.

microx

Click on ‘launch microx‘ tab:

launch microx

running microx

Microx starts running, and you can access localhost:8080 to test your API.

Let’s go to localhost:8080, and you should see the microx dashboard.

Mirock Dashboard

Click on ‘API’ And ‘Services’ Tabs:

Add Direct API

to select ‘rest api’ and ‘click’next,

Add a new Direct API

Name the API, Version and Resource and ‘next,

Click Next

For this use add dummy JSON reference payload as shown below and ‘next,

API Reference Source

The last step is to review, and once the data you have entered is correct, click ‘next,

review

You should see your just created API listed.

API and Services

Click on it to see the CRUD operations listed along with the end points. Let’s test with gate.

CRUD operations

Copy the link and open the endpoint on a local browser and you should see something like this:

localhost

conclusion

Docker is a must-see platform for anyone working with software development. Over the years, Docker has built up a huge community and support. This is an excellent initiative by Docker to help developers streamline their work around software development and deployment. The exciting fact is that you can create your own custom-built extension. We have many extensions on and off the extension marketplace. From continuous integration to delivery, we have all the extensions you need. When used wisely the extensions listed above can significantly impact your software delivery pipeline. Please try them and increase your speed and productivity.

Leave a Comment