Dev Useful Stuff
2.02K subscribers
2 photos
337 links
Here you can find some interesting links to development libraries, frameworks, tools, plugins and articles
Download Telegram
https://portainer.io/ - easy way to manage your Docker. You can consider it as a graphical interface for all your Docker and Docker Swarm commands. Could be useful, if your organisation uses many images. Quite handy, try the demo.

#Docker
Kompose is the small utility that could be useful if you want to run your Docker Compose scripts on Kubernetes or OpenShift.

#Docker #Kubernetes

http://kompose.io/
Few tools to manage running Docker containers:

1) Dockly - Docker console (!) UI and Dashboard for quick manging and inspecting of Containers and Images. Written on JS.
https://github.com/lirantal/dockly

2) ctop - CLI utility, provides a concise and condensed overview of real-time metrics for multiple containers:
https://github.com/bcicen/ctop

#Docker #terminal #gui #cli
DockerSlim - utility that helps you to build skinny containers. It uses static and dynamic analysis and dramatically reduces the size of ready image

#Docker #cli

http://dockersl.im
​​Testcontainers recently passed over 1000 stars threshold. It is an perfect reason to pen a post about this utterly useful library.

Intro

When you write unit-tests for your code, you usually mock all the external dependencies, such as database calls or message queue polling. But what if you need to make integration tests with real dependencies? Usually, it is quite tricky, because in this case, you have to have real services installed in your system, which is not very convenient. Say, you want to write integration tests working with a database, in this situation you need a real database running on your local machine.

As you can see, it is kind of a problem and not flexible at all, because you run tests on other developers computers and CI servers and all these guys also need to run the database to make tests passing. Is there any convenient solution?

Solution

Introducing Testcontainers (★ 1006). This java-library allows you to set up your dependencies right from your integration tests using Docker containers. Your tests remain independent of other services because each test set up an individual environment for its runtime.

Look how easy to use it. Say, you need a Redis for your test, then you add the class rule like so:

// Set up a redis container
@ClassRule
public static GenericContainer redis =
new GenericContainer("redis:3.0.2")
.withExposedPorts(6379);


and a spare Redis will be available for your tests on the 6379 port.

Please, refer to official documentation for more examples. This library also exists as a plugin for Spock framework and Scala tests.

#java #docker #tests #container #spock #scala
​​dive - (★ 2,942) is a tool for exploring a docker image, layer contents, and discovering ways to shrink your Docker image size.

Basic features:

● Show Docker image contents broken down by layer
● Indicate what's changed in each layer
● Estimate "image efficiency"
● Quick build/analysis cycles

#docker #cli #terminal #containers #image #useful
​​Earthly - (4,8k★ on GitHub) is a build automation tool for the container era. It allows you to execute all your builds in containers. This makes them self-contained, repeatable, portable and parallel. You can use Earthly to create Docker images and artifacts (e.g., binaries, packages, arbitrary files).

#build #ci #cd #docker #makefile
​​lazydocker - (★31.4k) is a simple terminal UI for both docker and docker-compose.

#docker #tui #terminal #go
👍5
​​oxker - (★ 1.1k) a yet another simple tui to view & control docker containers.

(similar projects are lazydocker, as well as dockly and ctop)

#docker #tui #rust #container #console #terminal
👏2