Best of ContainersAugust 2024

  1. 1
    Article
    Avatar of communityCommunity Picks·2y

    5 Docker Best Practices I Wish I Knew When I Started

    Learn five key Docker best practices: use multi-stage builds for smaller images, utilize .dockerignore files to streamline builds, implement health checks to ensure container reliability, use Docker Compose for easier local development, and avoid the 'latest' tag for better version control. Additionally, perform regular security scans to maintain secure Docker environments.

  2. 2
    Article
    Avatar of communityCommunity Picks·2y

    Using Docker Compose to Build Environments

    Docker Compose is a powerful tool designed for managing applications that run in multiple Docker containers. It allows you to define your entire application stack in a single YAML file, including each microservice, its configuration, and how they interact. This makes it easy to quickly spin up complex applications for development, testing, and production environments. Key features include isolation of application instances, stateful data management with persistent volumes, and support for iterative design. The post covers the Docker Compose CLI, essential commands, and how to create and manage docker-compose.yml files effectively.

  3. 3
    Video
    Avatar of beabetterdevBe A Better Dev·2y

    Learn Docker & Deploy to AWS - Beginner Tutorial

  4. 4
    Article
    Avatar of faunFaun·2y

    Deploy AI apps using Docker to containerize python-based GEN-AI Apps.

    Deploying AI applications can be streamlined using Docker to containerize Python-based generative AI apps. This guide walks you through setting up a full-stack application that answers questions about a PDF file, using LangChain for orchestration, Streamlit for the UI, Ollama for running the LLM, and Neo4j for vector storage. Key steps include cloning the repository, initializing Docker, configuring the Docker Compose file, and running the services to interact with the app via a browser.

  5. 5
    Article
    Avatar of devtoDEV·2y

    Docker: A Simple Introduction with Legos

    Docker is a tool that simplifies the process of building, transporting, and running applications by using lightweight containers. It ensures consistency and portability across different environments, makes resource management more efficient, and streamlines development. Building a Docker image involves creating a Dockerfile, assembling dependencies, and running the application in a container. Docker Compose can be used to manage multiple containers, such as a web application and a database, with ease.

  6. 6
    Article
    Avatar of strongdmstrongdm·2y

    Kubectl Cheat Sheet - Kubernetes Commands (Basic to Advanced)

    Kubernetes is a widely used container-centric management system created by Google and maintained globally. The kubectl command-line tool allows users to manage clusters, configure deployments, and perform various administrative tasks. This comprehensive cheat sheet covers installing kubectl, verifying installations, managing contexts for multiple clusters, core kubectl commands, and advanced operations such as monitoring, debugging, and securing access. Tips for increasing efficiency with kubectl, like customizing outputs and setting aliases, are also included.

  7. 7
    Article
    Avatar of nickjanetakisNick Janetakis·2y

    Docker Tip #99: Prefer Using compose.yaml over docker-compose.yml — Nick Janetakis

    The official Docker Compose specification now recommends using compose.yaml instead of docker-compose.yml. Although both file names are supported, Docker Compose looks for compose.yaml first. Support for compose.yaml was introduced in version 1.28.6 in March 2021, and is supported by all Docker Compose v2 versions. It's advised to update your Docker projects accordingly.

  8. 8
    Article
    Avatar of baeldungBaeldung·2y

    Java Virtual Machine Tutorials

    Java applications often face slow startup and warmup times. The CRaC project from OpenJDK addresses this by creating a performance checkpoint and restoring the JVM at that point. BellSoft offers optimized containers for Java applications, packaging Alpaquita Linux and Liberica JDK, enabling easy integration of CRaC in Spring Boot applications.

  9. 9
    Article
    Avatar of dockerDocker·2y

    Docker Best Practices: Understanding the Differences Between ADD and COPY Instructions in Dockerfiles

    This post explains the differences between the ADD and COPY instructions in Dockerfiles. It emphasizes the general recommendation to use COPY due to its simplicity and security, while highlighting scenarios where ADD might be beneficial due to its extended functionalities, such as handling URLs and unpacking archives. It also covers how these instructions operate in various build contexts, including local files, Git repositories, and OCI images, along with the associated security implications.

  10. 10
    Article
    Avatar of communityCommunity Picks·2y

    Why use DDEV instead of rolling your own Docker-based local dev solution?

    DDEV is an open-source tool designed for local development environments, running on Docker, supporting many CMS types, various database versions, and multiple architectures (macOS, Windows, Linux). It offers out-of-the-box features like HTTPS, Xdebug, and integration with services like Platform.sh and Pantheon.io. DDEV simplifies setup and maintenance, enabling development teams to work more efficiently compared to custom Docker solutions.

  11. 11
    Article
    Avatar of lobstersLobsters·2y

    Replace Docker Compose with Quadlet for Servers

    Traditionally, Docker Compose has been used by small teams to manage container deployments without the complexity of Kubernetes. However, given the shortcomings of Docker and the advantages of Podman, Quadlet—a tool for running Podman containers with Systemd—emerges as a robust alternative. Quadlet allows you to manage container deployments in a declarative way directly via Systemd, making it a compelling choice for server environments. The guide explains how to configure networks, volumes, and containers using Quadlet, and highlights its benefits for security, updates, and logging.

  12. 12
    Video
    Avatar of davesgarageDave's Garage·2y

    Docker Explained: What You Need to Know - Starting with Hello World

  13. 13
    Article
    Avatar of lobstersLobsters·2y

    vpsAdminOS

    vpsAdminOS is a lightweight operating system designed for container virtualization, created for vpsFree.cz to replace their outdated OpenVZ Legacy kernel. It uses a mix of technologies including LTS kernel, runit, ZFS, osctl, and LXC to run and manage unprivileged system containers, focusing on user namespace and cgroup management for isolation and resource control.

  14. 14
    Article
    Avatar of communityCommunity Picks·2y

    Optimizing Docker Images for Size and Security: A Comprehensive Guide

    Discover effective strategies to optimize Docker images for both size and security. Learn how using minimal base images, minimizing layers, and multi-stage builds can drastically reduce image sizes. Enhance security by using trusted base images, running containers as non-root users, scanning for vulnerabilities, limiting network exposure, and managing secrets effectively.

  15. 15
    Article
    Avatar of andrewlock.NET Escapades·2y

    Combining multiple docker images into a multi-arch image

    Learn how to create multi-arch Docker images by combining separate x64 and arm46 images into a single Docker image. This guide details both simple and advanced methods using Docker's buildx and manifest commands, and discusses the importance of provenance attestation for securing your software supply chain.

  16. 16
    Article
    Avatar of cybertec_postgresqlCYBERTEC PostgreSQL·2y

    Why you should understand containers now

    Container technologies have transformed software development and deployment by offering flexibility, scalability, and efficiency. Unlike virtual machines, containers are lightweight as they share the host's operating system. This makes them resource-efficient and fast. The post compares containers and VMs, highlights their security concerns, and introduces Docker and Podman for container management. It also provides a basic guide for building a Docker container using Rockylinux 9.