Heading: Administration

Learning Docker, Part 6: Working with Data

In today's part of the translation of a series of materials about Docker, we will talk about working with data. In particular, about Docker volumes. In these materials, we constantly compared Docker programming mechanisms with various edible analogies. Let us not deviate from this tradition here either. Let the data in Docker be the spice. There are many types of spices in the world, and […]

Docker Compose Guide for Beginners

The author of the article, the translation of which we are publishing today, says that it is intended for those developers who want to learn Docker Compose and are moving towards creating their first client-server application using Docker. It is assumed that the reader of this material is familiar with the basics of Docker. If this is not the case, you can take a look at this series of materials, this publication, [...]

GitLab Shell Runner. Competitively launch testable services with Docker Compose

This article will be of interest to both testers and developers, but is intended more for automators who are faced with the problem of setting up GitLab CI / CD for integration testing in the face of insufficient infrastructure resources and / or the absence of a container orchestration platform. I'll show you how to deploy test environments using docker compose on a single GitLab shell runner and […]

Implement static analysis into the process, rather than looking for bugs with it

I was inspired to write this article by a large number of materials on static analysis that are increasingly coming across. Firstly, this is the PVS-studio blog, which actively promotes itself on HabrΓ© with reviews of errors found by their tool in open source projects. PVS-studio recently implemented Java support, and, of course, the developers of IntelliJ IDEA, whose built-in analyzer is […]

Run IntelliJ IDEA Inspections on Jenkins

IntelliJ IDEA today has the most advanced static Java code analyzer, which, in terms of its capabilities, has left such "veterans" as Checkstyle and Spotbugs far behind. Its numerous "inspections" check the code in various aspects, from coding style to characteristic bugs. However, as long as the results of the analysis are displayed only in the developer's local IDE, they are of little use to the development process. […]

Detailed review of 3CX v16

In this article, we will make a detailed overview of the features of 3CX v16. The new version of the PBX offers various improvements to the customer experience and increased employee productivity. At the same time, the work of a system engineer who maintains the system is noticeably facilitated. In v16, we have expanded the possibilities of combined work. Now the system allows you to communicate not only between employees, but also with your customers and […]

Well-Fed Philosophers or Competitive .NET Programming

Let's look at how concurrent and parallel programming works in .Net, using the example of the lunching philosophers problem. The plan is as follows, from thread/process synchronization to the actor model (in the following parts). The article may be useful for a first acquaintance or to refresh your knowledge. Why even know how to do this? Transistors reach their minimum size, Moore's law hits the speed limit […]

"Mice cried and pricked .." Import substitution in practice. Part 4 (theoretical, final). Systems and services

Having talked in previous articles about options, β€œdomestic” hypervisors and β€œdomestic” Operating Systems, we will continue to collect information about the necessary systems and services that can be deployed on these OSes. In fact, this article turned out to be mainly theoretical. The problem is that there is nothing new or original in β€œdomestic” systems. And to rewrite the same thing for the hundredth time, [...]

The winners of the international competitions SSH and sudo are again on stage. Led by Distinguished Conductor Active Directory

Historically, sudo permissions were controlled by the contents of the files in /etc/sudoers.d and visudo, and key authorization was done using ~/.ssh/authorized_keys. However, as infrastructure grows, there is a desire to manage these rights centrally. Today there may be several solution options: Configuration management system - Chef, Puppet, Ansible, Salt Active Directory + sssd Various perversions in the form of scripts […]

Netramesh is a lightweight service mesh solution.

As we move from a monolithic application to a microservices architecture, we face new challenges. In a monolithic application, it is usually quite easy to determine which part of the system the error occurred in. Most likely, the problem is in the code of the monolith itself, or in the database. But when we start looking for a problem in a microservice architecture, everything is no longer so obvious. We need to find all [...]

We invite developers to Think Developers Workshop

According to a good, but not yet established tradition, we are holding an open technical meetup in May! This year the meetup will be β€œseasoned” with a practical part, and you will be able to stop by our β€œgarage” and do a little assembly and programming. Date: May 15, 2019, Moscow. Other useful information under the cut. You can register and watch the program on the event website [...]