# DevOps best practices

Published articles for DevOps best practices.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Automatic updates of Docker images with Renovate Bot

DevFeed: [Automatic updates of Docker images with Renovate Bot](<https://devfeed.tech/articles/automatic-updates-of-docker-images-with-renovate-bot-27699.md>)

Original publisher: [Read original article](<https://gagor.pro/2024/03/automatic-updates-of-docker-images-with-renovate-bot/>)

Author: Tom

Published: 2024-03-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Dockerfile](<https://devfeed.tech/topics/dockerfile.md>), [renovate](<https://devfeed.tech/topics/renovate.md>), [configuration](<https://devfeed.tech/topics/configuration.md>)

Tags: [automate-docker-updates](<https://devfeed.tech/tags/automate-docker-updates.md>), [bash](<https://devfeed.tech/tags/bash.md>), [best-practices](<https://devfeed.tech/tags/best-practices.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [developers](<https://devfeed.tech/tags/developers.md>), [devops](<https://devfeed.tech/tags/devops.md>), [devops-best-practices](<https://devfeed.tech/tags/devops-best-practices.md>), [docker](<https://devfeed.tech/tags/docker.md>), [docker-image-updates](<https://devfeed.tech/tags/docker-image-updates.md>), [docker-security](<https://devfeed.tech/tags/docker-security.md>), [dockerfiles](<https://devfeed.tech/tags/dockerfiles.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [linux](<https://devfeed.tech/tags/linux.md>), [renovate](<https://devfeed.tech/tags/renovate.md>), [renovate-bot](<https://devfeed.tech/tags/renovate-bot.md>), [renovate-vs-dependabot](<https://devfeed.tech/tags/renovate-vs-dependabot.md>), [security](<https://devfeed.tech/tags/security.md>), [updates](<https://devfeed.tech/tags/updates.md>)

### AI overview

A practical guide to automating Docker image and dependency updates with Renovate Bot. It explains how Renovate detects parent image changes, tracks binaries downloaded from sources such as GitHub or Maven, and uses custom comments and configuration to identify dependencies and propose or automatically merge updates.

### Source excerpt

Learn how to automate Docker image updates using Renovate Bot, a versatile tool that supports various package managers and custom dependency links.

## Using Makefiles for software builds, Postfix map generation, and project workflows

DevFeed: [Using Makefiles for software builds, Postfix map generation, and project workflows](<https://devfeed.tech/articles/how-i-stopped-worrying-and-loved-makefiles-27697.md>)

Original publisher: [Read original article](<https://gagor.pro/2024/02/how-i-stopped-worrying-and-loved-makefiles/>)

Author: Tom

Published: 2024-02-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [make](<https://devfeed.tech/topics/make.md>), [Hugo](<https://devfeed.tech/topics/hugo.md>), [Terraform](<https://devfeed.tech/topics/terraform.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [build](<https://devfeed.tech/tags/build.md>), [compilation](<https://devfeed.tech/tags/compilation.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [devops](<https://devfeed.tech/tags/devops.md>), [devops-best-practices](<https://devfeed.tech/tags/devops-best-practices.md>), [environment-management](<https://devfeed.tech/tags/environment-management.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [hugo-static-site-generation](<https://devfeed.tech/tags/hugo-static-site-generation.md>), [learn](<https://devfeed.tech/tags/learn.md>), [linux](<https://devfeed.tech/tags/linux.md>), [macos](<https://devfeed.tech/tags/macos.md>), [make](<https://devfeed.tech/tags/make.md>), [makefile-for-hugo](<https://devfeed.tech/tags/makefile-for-hugo.md>), [makefile-for-terraform](<https://devfeed.tech/tags/makefile-for-terraform.md>), [parallel](<https://devfeed.tech/tags/parallel.md>), [terraform](<https://devfeed.tech/tags/terraform.md>), [terraform-automation](<https://devfeed.tech/tags/terraform-automation.md>)

### AI overview

This tutorial explains how GNU Make manages dependencies, detects changed files, sets variables, and runs tasks in parallel. It also shows a Postfix use case for regenerating map files and alias databases from configuration files.

### Source excerpt

Learn how to use Makefiles to streamline your Terraform and Hugo projects, making environment management and static site generation more efficient.

## The best way to get NVM working in CI/CD systems

DevFeed: [The best way to get NVM working in CI/CD systems](<https://devfeed.tech/articles/the-best-way-to-get-nvm-working-in-ci-cd-systems-27681.md>)

Original publisher: [Read original article](<https://gagor.pro/2023/04/the-best-way-to-get-nvm-working-in-ci-cd-systems/>)

Author: Tom

Published: 2023-04-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [CI/CD](<https://devfeed.tech/topics/cicd.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>), [DevOps](<https://devfeed.tech/topics/devops.md>), [Shell](<https://devfeed.tech/topics/shell.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [best-practices](<https://devfeed.tech/tags/best-practices.md>), [ci-cd](<https://devfeed.tech/tags/ci-cd.md>), [ci-cd-node-js-setup](<https://devfeed.tech/tags/ci-cd-node-js-setup.md>), [cli](<https://devfeed.tech/tags/cli.md>), [devops](<https://devfeed.tech/tags/devops.md>), [devops-best-practices](<https://devfeed.tech/tags/devops-best-practices.md>), [docker](<https://devfeed.tech/tags/docker.md>), [docker-node-js-management](<https://devfeed.tech/tags/docker-node-js-management.md>), [linux](<https://devfeed.tech/tags/linux.md>), [node](<https://devfeed.tech/tags/node.md>), [node-js-version-control](<https://devfeed.tech/tags/node-js-version-control.md>), [node-version-manager](<https://devfeed.tech/tags/node-version-manager.md>), [nvm-in-ci-cd](<https://devfeed.tech/tags/nvm-in-ci-cd.md>), [shell](<https://devfeed.tech/tags/shell.md>)

### AI overview

This tutorial explains the challenges of using NVM to manage Node.js versions in CI/CD systems, especially in non-interactive shells. It discusses the role of shell startup files and Docker base images when supporting many projects and Node.js versions.

### Source excerpt

Learn the best way to get NVM (Node Version Manager) working in CI/CD systems, ensuring seamless Node.js version management in your DevOps workflows.