In this article, I will describe how to manage Windows Containers via GUI. Docker provides a great Docker CLI that allows us to create, interact, and delete containers, but sometimes it’s nice to have an interface to manage Containers. There are many admins who much prefer a GUI tool to handle every task and it can be useful to use an interface when you have many containers to manage or if you start working with Docker. In this article, I don’t want to judge which GUI is better because it depends! You must use the GUI that will suit your needs. So do not hesitate to test this GUI. In this article, I will walk through the following tools:
- Kitematic
- Portainer
- DockStation
For sure, there are other interfaces so this list is not exhaustive.
Creating a Docker Container
In this guide, I will create a simple Docker Container to demonstrate how to use these interfaces. Let’s start by pulling the “nanoserver/iis-php” Docker image which contains: Windows Nano Server, IIS and PHP 7. Once Docker has been installed on your system, open an elevated PowerShell console:
1 2 3 4 5 |
docker images docker pull nanoserver/iis-php docker images |
Now if I want to create my first Windows Container, I just have to run the following command:
1 |
docker run --name nanoiis -d -it -p 8001:80 nanoserver/iis-php |
This command will expose my Windows Container’s port 80 on my Container Host port 8001. Let’s confirm that a Windows Container is running in the background:
1 |
docker ps |
Kitematic
Kitematic has been acquired by Docker in October 2015, so Kitematic is part of the Docker Toolbox. It means that if you work with ‘Docker for Windows’, then you can download Kitematic directly by right-clicking on your Docker icon, and select Kitematic:
Once Kitematic has been downloaded, extract the ZIP file and then you can run ‘Kitematic.exe’:
At the first screen, you will be able to connect to your Docker Hub account, but it is not mandatory. On the left side of Kitematic, you can interact with your Docker Containers that exist on your system. In my case, I can see my ‘nanoiis’ container which is running on my system. On the right side of Kitematic, I can create a new container by clicking ‘Create’:
Here, I just want to manage my Docker Container, so I select ‘nanoiis’. With Kitematic, I will be able to:
- Check the Container logs
- Preview the home page of my container
- Configure my container (Network, volumes, …)
- Open the Docker CLI from this interface
Now, navigate to the settings to dig into the possible configuration options and you will notice that you can:
- Start, stop and restart the container
- Modify the hostname and the port number
- Create a Container Volume
- Configure the network
- …
Finally, I also can manage a Linux Container on my Windows 10 and easily browse to my nginx website. I also can connect directly to my Container using the Docker CLI.
Portainer
Portainer is an Open-Source lightweight management UI that allows you to easily manage your Docker Hosts or Swarm Clusters. Portainer is available on Linux, Windows, and OSX. Portainer is a free web application that runs as a container itself. To install Portainer, run the following commands:
1 2 3 |
docker volume create portainer_data docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer |
At this step, Portainer has been started. Open a web browser and go to http://localhost:9000. You will be prompted to create a password and select the Docker instance to manage.
When the user has been created, the Home Dashboard will display the following information:
- Node information such as CPU usage, Memory usage, Docker version, and Node name
- Containers status: Running Vs Stopped
- Docker Volumes
- Docker Images
- Docker Networks
If I open a PowerShell console, I can get the same information using the Docker commands:
Portainer allows you to execute some tasks on your Containers: Start, Stop, Kill, Pause, Add and Remove Container. You also can manage Docker images, check Docker events, create App templates (using Dockerfiles and Compose files), and so on…
DockStation
DockStation is a developer-centric application for managing projects based on Docker. You can monitor, configure, and manage services and containers using DockerStation. It is available on Linux, Windows, and OSX. Download the EXE installer and run through the simple installation wizard:
Here is the default home page. You can create a full project or simply go to the ‘Containers’ tab to manage your Containers.
With the application, it is very convenient to view the status of containers and easily view their logs:
You can easily monitor multiple and single container resources. Easy tracking CPU usage, Memory usage, Networks I/O, and Blocks I/O.
When I select my container, I can see the logs, statistics, and I can also manage the container with common tasks such as start, stop, restart, …
Conclusion
Sometimes managing Docker Containers can be a bit tricky, so using a GUI is a great way to get started with Docker. It can also be useful if you manage a ton of Containers in production. GUI is also very interesting to retrieve some stats about your Windows Containers. Finally, if you are implementing Windows Containers for the first time, GUI can be more comfortable than Docker CLI.
If these Graphical User Interfaces do not suit your needs but if you like PowerShell, you could easily build your own GUI.
Thanks for reading!