Feed powered byStream Blue Logo Copy 5Created with Sketch.
Portainer

Decision at Portainer about Docker, Go

Avatar of deviantony
Co-founder and Software Engineer at Portainer.io at Portainer.io
DockerDocker
GoGo

Go was a natural choice for the backend of the Portainer web application. It makes the creation of HTTP API/services a breeze with a lot of standard features available in the ecosystem.

One of the main thing we like with Go is its synergy with Docker and how easy it is to leverage this synergy to easily distribute an efficient software:

  • Go allows to compile a program for multiple platforms and OSes easily (it's just a matter of options when starting the compilation process, no matter the execution context)
  • Go binaries are lightweight, fast and can have a low memory footprint

Combining these points with the empty scratch Docker image and multi-platform images, we can distribute Portainer for any environment that is running Docker. It allows our users to get started using the software in a matter of seconds.

Go is also heavily geared toward the creation of HTTP/API services and is a language that is easy to read and also quite easy to learn, making it a first choice in the context of Portainer.

8 upvotes5.8K views

Decision at Portainer about Docker, Semaphore, GitHub

Avatar of deviantony
Co-founder and Software Engineer at Portainer.io at Portainer.io
DockerDocker
SemaphoreSemaphore
GitHubGitHub

Portainer being an open-source software, we decided to use the GitHub platform to host our codebase as well as our issue system. No need to present GitHub nowadays, it's perfectly geared with all the tools you need to manage small to large open-source projects (albeit with the usage of integrations that are easily available via its marketplace).

In the context of the Portainer project, I'd like to highlight the tight integration of GitHub with Semaphore CI system. By leveraging this integration, we are able to automatically trigger a build of the application when a contribution is made to the project. This build is actually composed of a compilation of the program as well as the automatic creation and deployment of a Docker image directly on the DockerHub.

This allow us to easily test and validate contributions made to the project and is a must-have for any open-source project that can leverage it.

2 upvotes483 views

Decision at Portainer about DigitalOcean

Avatar of deviantony
Co-founder and Software Engineer at Portainer.io at Portainer.io
DigitalOceanDigitalOcean

When talking about cloud hosting and cloud providers for small projects/infrastructure, I usually favor DigitalOcean before any other.

A mix of vast array of cloud servers size, decent availability regions and affordable plans makes it our go solution for our cloud provider choice !

And their management portal is clean and so easy to use that it actually makes you enjoy managing your infrastructure.

2 upvotes125 views