title: Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¸ Ð³ÐµÐ½ÐµÑÐ°ÑÐ¸Ñ Ð¿Ð°ÑÐ°Ð¼ÐµÑÑÐ¸ÑÐµÑÐºÐ¸Ñ Ð¼Ð¾Ð´ÐµÐ»ÐµÐ¹ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼ÑÑ ÑÐ±Ð¾ÑÐ¾Ðº Ð² Ð¸Ð·Ð¾Ð»Ð¸ÑÐ¾Ð²Ð°Ð½Ð½Ð¾Ð¹ ÑÑÐµÐ´Ðµ docker
title: Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð¼Ð°Ð³Ð¸ÑÑÑÐ°
titleType: Subtitle
title: The development and generating of parametric reproducible builds in isolated Docker environment
Creators: name: ÐÐ±ÑÐ½Ð°Ð³Ð¸Ð¼Ð¾Ð²Ð°, ÐÐ¹Ð³ÑÐ»Ñ
Publisher: name: Ð¡Ð°Ð½ÐºÑ-ÐÐµÑÐµÑÐ±ÑÑÐ³ÑÐºÐ¸Ð¹ Ð¿Ð¾Ð»Ð¸ÑÐµÑÐ½Ð¸ÑÐµÑÐºÐ¸Ð¹ ÑÐ½Ð¸Ð²ÐµÑÑÐ¸ÑÐµÑ ÐÐµÑÑÐ° ÐÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾
Year: 2022
Subjects: ÐÑÑÐ¸ÑÐ»Ð¸ÑÐµÐ»ÑÐ½ÑÐµ Ð¼Ð°ÑÐ¸Ð½Ñ ÑÐ»ÐµÐºÑÑÐ¾Ð½Ð½ÑÐµ
ÐÐ¾Ð¼Ð¿ÑÑÑÐµÑÐ½Ð¾Ðµ Ð¼Ð¾Ð´ÐµÐ»Ð¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ
ÐºÐ¾Ð½ÑÐµÐ¹Ð½ÐµÑÐ¸Ð·Ð°ÑÐ¸Ñ
Ð²Ð¾ÑÐ¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ð¼ÑÐµ ÑÐ±Ð¾ÑÐºÐ¸
Ð¿Ð°ÐºÐµÑÐ½ÑÐµ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑÑ
ÑÐ¸ÑÑÐµÐ¼Ñ Ð°Ð²ÑÐ¾Ð¼Ð°ÑÐ¸Ð·Ð¸ÑÐ¾Ð²Ð°Ð½Ð½ÑÑ ÑÐ±Ð¾ÑÐ¾Ðº Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½Ð¾Ð³Ð¾ Ð¾Ð±ÐµÑÐ¿ÐµÑÐµÐ½Ð¸Ñ
containerization
reproducible builds
package manager
automated software build systems

description: Ð¢ÐµÐ¼Ð° Ð²ÑÐ¿ÑÑÐºÐ½Ð¾Ð¹ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð¾Ð¹ ÑÐ°Ð±Ð¾ÑÑ: Â«Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¸ Ð³ÐµÐ½ÐµÑÐ°ÑÐ¸Ñ Ð¿Ð°ÑÐ°Ð¼ÐµÑÑÐ¸ÑÐµÑÐºÐ¸Ñ Ð¼Ð¾Ð´ÐµÐ»ÐµÐ¹ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼ÑÑ ÑÐ±Ð¾ÑÐ¾Ðº Ð² Ð¸Ð·Ð¾Ð»Ð¸ÑÐ¾Ð²Ð°Ð½Ð½Ð¾Ð¹ ÑÑÐµÐ´Ðµ DockerÂ». ÐÐ°Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð¿Ð¾ÑÐ²ÑÑÐµÐ½Ð° Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾ÑÐ¾Ð±ÐµÐ½Ð½Ð¾ÑÑÐµÐ¹ Ð¸ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐµ Ð¼Ð¾Ð´ÐµÐ»Ð¸, Ð¾Ð±ÐµÑÐ¿ÐµÑÐ¸Ð²Ð°ÑÑÐµÐ¹ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼Ð¾ÑÑÑ ÑÐ±Ð¾ÑÐ¾Ðº ÐºÐ¾Ð½ÑÐµÐ¹Ð½ÐµÑÐ¸Ð·Ð¸ÑÐ¾Ð²Ð°Ð½Ð½ÑÑ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ð¹ Ð² Ð¸Ð·Ð¾Ð»Ð¸ÑÐ¾Ð²Ð°Ð½Ð½Ð¾Ð¹ ÑÑÐµÐ´Ðµ Docker. ÐÐ°Ð´Ð°ÑÐ¸, ÐºÐ¾ÑÐ¾ÑÑÐµ ÑÐµÑÐ°Ð»Ð¸ÑÑ Ð² ÑÐ¾Ð´Ðµ Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ: ÐÐ·ÑÑÐµÐ½Ð¸Ðµ Ð²Ð¸Ð´Ð¾Ð² ÐºÐ¾Ð½ÑÐµÐ¹Ð½ÐµÑÐ¸Ð·Ð°ÑÐ¸Ð¸, Ð¾ÑÐ¾Ð±ÐµÐ½Ð½Ð¾ÑÑÐµÐ¹ ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¹ Ð¾Ð±ÐµÑÐ¿ÐµÑÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÑÐµÐ¹Ð½ÐµÑÐ½Ð¾Ð¹ Ð²Ð¸ÑÑÑÐ°Ð»Ð¸Ð·Ð°ÑÐ¸Ð¸, ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½ÑÐ¾Ð² Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÑ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½Ð¾Ð³Ð¾ Ð¾Ð±ÐµÑÐ¿ÐµÑÐµÐ½Ð¸Ñ Ð´Ð»Ñ ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð¸Ð¹ ÐºÐ¾Ð½ÑÐµÐ¹Ð½ÐµÑÐ¾Ð² Docker, Ð¼ÐµÑÐ¾Ð´Ð¾Ð² Ð¿Ð¾ÑÑÑÐ¾ÐµÐ½Ð¸Ñ Docker Ð¾Ð±ÑÐ°Ð·Ð¾Ð², Ð¿ÑÐ°Ð²Ð¸Ð» Ð¿Ð¾ÑÑÑÐ¾ÐµÐ½Ð¸Ñ Ð²Ð¾ÑÐ¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ð¼ÑÑ Docker ÑÐ±Ð¾ÑÐ¾Ðº. ÐÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ðµ Ð¼ÐµÑÐ¾Ð´Ð¾Ð² ÑÐ¸ÐºÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð²ÐµÑÑÐ¸Ð¹ ÑÑÐ¸Ð»Ð¸Ñ, ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½ÑÑ Ð¿Ð°ÐºÐµÑÐ½ÑÐ¼Ð¸ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑÐ°Ð¼Ð¸. ÐÐ½Ð°Ð»Ð¸Ð· ÐºÑÐ¸ÑÐµÑÐ¸Ñ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼Ð¾ÑÑÐ¸ Docker Ð¾Ð±ÑÐ°Ð·Ð¾Ð², Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ðµ Ð¿Ð°ÑÐ°Ð¼ÐµÑÑÐ¾Ð², Ð²Ð»Ð¸ÑÑÑÐ¸Ñ Ð½Ð° Ð´Ð°Ð½Ð½ÑÐ¹ ÐºÑÐ¸ÑÐµÑÐ¸Ð¹. Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¼Ð¾Ð´ÐµÐ»ÐµÐ¹ ÑÐ¸ÐºÑÐ°ÑÐ¸Ð¸ Ð²ÐµÑÑÐ¸Ð¹ Ð¿Ð°ÐºÐµÑÐ¾Ð² Ð¿ÑÐ¾ÐµÐºÑÐ¾Ð² Ð¸ ÑÐ±Ð¾ÑÐºÐ¸ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼ÑÑ Docker Ð¾Ð±ÑÐ°Ð·Ð¾Ð². Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½Ð¾Ð³Ð¾ Ð¾Ð±ÐµÑÐ¿ÐµÑÐµÐ½Ð¸Ñ, ÑÐµÐ°Ð»Ð¸Ð·ÑÑÑÐµÐ³Ð¾ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ðµ Ð¸ Ð²ÐµÑÐ¸ÑÐ¸ÐºÐ°ÑÐ¸Ñ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼ÑÑ ÑÐ±Ð¾ÑÐ¾Ðº.Â Ð¢ÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ð½Ð¾Ð³Ð¾ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ° ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼ÑÑ ÑÐ±Ð¾ÑÐ¾Ðº Ð½Ð° ÑÐ°Ð·Ð»Ð¸ÑÐ½ÑÑ Ð¿ÑÐ¾ÐµÐºÑÐ°Ñ. ÐÐ»Ñ Ð¿ÑÐ¾Ð²ÐµÑÐºÐ¸ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼Ð¾ÑÑÐ¸ ÑÐ±Ð¾ÑÐ¾Ðº Ð±ÑÐ»Ð¸ Ð¿Ð¾Ð´Ð³Ð¾ÑÐ¾Ð²Ð»ÐµÐ½Ñ Ð¿ÑÐ¾ÐµÐºÑÑ, Ð¸ÑÐ¿Ð¾Ð»ÑÐ·ÑÑÑÐ¸Ðµ Ð¿Ð°ÐºÐµÑÐ½ÑÐµ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑÑ ÑÐ°Ð·Ð»Ð¸ÑÐ½ÑÑ Ð´Ð¸ÑÑÑÐ¸Ð±ÑÑÐ¸Ð²Ð¾Ð² Linux, Ð° ÑÐ°ÐºÐ¶Ðµ ÑÐ¸ÑÑÐµÐ¼Ñ ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð´ÑÐ»ÐµÐ¹ Ð´Ð»Ñ ÑÐ°ÑÑÐ¼Ð°ÑÑÐ¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ·ÑÐºÐ¾Ð² Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ. ÐÑÐ¾Ð²ÐµÐ´ÐµÐ½Ð½ÑÐµ ÑÐºÑÐ¿ÐµÑÐ¸Ð¼ÐµÐ½ÑÑ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ ÑÐ´ÐµÐ»Ð°ÑÑ Ð²ÑÐ²Ð¾Ð´ Ð¾ ÑÐ¿ÐµÐºÑÑÐµ Ð¿ÑÐ¸Ð¼ÐµÐ½Ð¸Ð¼Ð¾ÑÑÐ¸ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ð½Ð¾Ð³Ð¾ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½Ð¾Ð³Ð¾ Ð¾Ð±ÐµÑÐ¿ÐµÑÐµÐ½Ð¸Ñ. Ð ÑÐµÐ·ÑÐ»ÑÑÐ°ÑÐµ Ð¿ÑÐ¾Ð²ÐµÐ´ÐµÐ½Ð½Ð¾Ð¹ ÑÐ°Ð±Ð¾ÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ñ Ð¼Ð¾Ð´ÐµÐ»Ð¸ ÑÐ¸ÐºÑÐ°ÑÐ¸Ð¸ Ð²ÐµÑÑÐ¸Ð¹ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½ÑÑ Ð¿Ð°ÐºÐµÑÐ¾Ð², Ð° ÑÐ°ÐºÐ¶Ðµ ÑÐ±Ð¾ÑÐºÐ¸ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼ÑÑ Docker Ð¾Ð±ÑÐ°Ð·Ð¾Ð². ÐÐ° Ð¾ÑÐ½Ð¾Ð²Ðµ Ð¿Ð¾ÑÑÑÐ¾ÐµÐ½Ð½ÑÑ Ð¼Ð¾Ð´ÐµÐ»ÐµÐ¹ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ð¾ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½Ð¾Ðµ Ð¾Ð±ÐµÑÐ¿ÐµÑÐµÐ½Ð¸Ðµ, ÑÐµÐ°Ð»Ð¸Ð·ÑÑÑÐµÐµ Ð³ÐµÐ½ÐµÑÐ°ÑÐ¸Ñ Ð¿Ð¾Ð²ÑÐ¾ÑÑÐµÐ¼ÑÑ Docker Ð¾Ð±ÑÐ°Ð·Ð¾Ð² Ð½Ð° ÑÐ°Ð·Ð»Ð¸ÑÐ½ÑÑ Ð¾ÐºÑÑÐ¶ÐµÐ½Ð¸ÑÑ.
description: The theme of the final graduation research: âThe development and generating of parametric reproducible builds in isolated Docker environmentâ. This research is devoted to study the features and the development of a model that ensures the repeatability of builds of containerized applications in an isolated Docker environment. The tasks that were solved during the research:Â Studying the types of containerization, the features of technologies for providing container virtualization, the components of the software architecture for managing Docker containers, the methods for building Docker images, the rules for building reproducible Docker builds. Study of methods for fixing versions of utilities installed by package managers. Analysis of the repeatability criterion for Docker images, study of the parameters that affect this criterion. Development of a model for fixing versions of project packages and building repeatable Docker images.Development of software that implements the creation and verification of repeatable builds. Testing the development tool for creating reproducible builds model on various projects. To check the repeatability of assemblies, projects were prepared using package managers of various Linux distributions, as well as module management systems for the programming languages ââin question. The conducted experiments allow us to draw a conclusion about the applicability spectrum of the developed software. This research is devoted to study the features and the development of a model that ensures the repeatability of builds of containerized applications in an isolated Docker environment. As a result of the work carried out, a model for fixing versions of software packages and repeatable images was developed. Based on the constructed models, software has been developed that implements the generating of reproducible Docker images on various environments.