{"id":1176,"date":"2024-07-22T20:45:08","date_gmt":"2024-07-22T20:45:08","guid":{"rendered":"https:\/\/dockerpros.com\/?post_type=glossary&#038;p=1176"},"modified":"2024-07-22T20:51:10","modified_gmt":"2024-07-22T20:51:10","slug":"docker-aufs","status":"publish","type":"glossary","link":"https:\/\/dockerpros.com\/it\/wiki\/docker-aufs\/","title":{"rendered":"AUFS Docker"},"content":{"rendered":"<h1>Understanding Docker AUFS: An In-Depth Exploration<\/h1>\n<h2>Definition of AUFS<\/h2>\n<p>Advanced Multi-Layered Unification Filesystem (AUFS) is a sophisticated file system that allows the creation of a layered file system architecture, which is essential for Docker\u2019s ability to manage <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\" target=\"_blank\">container<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> immagini in modo efficiente. Supportando il concetto di livelli, AUFS abilita il <span class=\"glossaryai-tooltip glossary-term-666\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/docker-engine\/\" target=\"_blank\">motore Docker<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Docker Engine \u00e8 una tecnologia di containerizzazione open source che consente agli sviluppatori di creare, distribuire e gestire applicazioni all'interno di ambienti leggeri e isolati chiamati container.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/docker-engine\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> to build, share, and manage <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\" target=\"_blank\">container<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> images with minimal disk usage and improved performance, making it a pivotal component in the Docker ecosystem.<\/p>\n<h2>Introduction to Copy-on-Write Mechanism<\/h2>\n<p>At the core of AUFS is the Copy-on-Write (CoW) mechanism. This approach allows for the efficient storage of multiple versions of files and directories without duplicating data. When a <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\" target=\"_blank\">container<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> is created from an <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, AUFS crea un nuovo strato sopra l'originale. <span class=\"glossaryai-tooltip glossary-term-739\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image-layers\/\" target=\"_blank\">livelli<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Image layers are fundamental components in graphic design and editing software, allowing for the non-destructive manipulation of elements. Each layer can contain different images, effects, or adjustments, enabling precise control over composition and visual effects.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image-layers\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>. Any changes made within the <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\" target=\"_blank\">container<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> (file modifications, deletions, or additions) occur in this new layer, while the underlying layers remain intact and unaltered.<\/p>\n<p>This is particularly useful in scenarios where multiple containers share the same base <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>. Instead of duplicating the entire <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> for each <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\" target=\"_blank\">container<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, AUFS allows them to share the unchanged layers, preserving disk space and enhancing performance through reduced read times.<\/p>\n<h2>Layering in Docker Images<\/h2>\n<p>Docker images are composed of multiple layers, each representing a set of filesystem changes. AUFS manages these layers seamlessly. When you build a Docker <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> with multiple commands, each command creates a new layer. For example:<\/p>\n<pre><code class=\"language-Dockerfile\">FROM ubuntu:20.04\n<span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/run\/\" target=\"_blank\">RUN<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" si riferisce a un comando in diversi linguaggi di programmazione e sistemi operativi per eseguire un programma o script specificato. Avvia processi, fornendo un ambiente controllato per l'esecuzione dei compiti.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> apt-get update\n<span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/run\/\" target=\"_blank\">RUN<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" si riferisce a un comando in diversi linguaggi di programmazione e sistemi operativi per eseguire un programma o script specificato. Avvia processi, fornendo un ambiente controllato per l'esecuzione dei compiti.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> apt-get install -y python3<\/code><\/pre>\n<p>In this case, the base Ubuntu <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> is the first layer, while the results of the <code>apt-get update<\/code> e il <code>apt-get install<\/code> commands create subsequent layers. AUFS allocates these layers for efficient access, allowing Docker to pull only the layers that are necessary for creating a specific <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>.<\/p>\n<h2>Advantages of Using AUFS<\/h2>\n<h3>Efficient Storage Utilization<\/h3>\n<p>L'architettura a strati di AUFS porta a una significativa efficienza di archiviazione. Poich\u00e9 gli strati non modificati sono condivisi tra diversi container, l'impronta di archiviazione complessiva viene minimizzata. Ci\u00f2 \u00e8 particolarmente vantaggioso in ambienti in cui vengono distribuiti pi\u00f9 container basati su immagini simili, come nelle architetture a microservizi.<\/p>\n<h3>Distribuzione rapida delle immagini<\/h3>\n<p>Quando si distribuiscono immagini Docker via a <span class=\"glossaryai-tooltip glossary-term-658\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/registry\/\" target=\"_blank\">registry<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">A registry is a centralized database that stores information about various entities, such as software installations, system configurations, or user data. It serves as a crucial component for system management and configuration.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/registry\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, AUFS enhances speed and efficiency. Since only the layers that differ from the base <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> need to be transferred, AUFS reduces the amount of data sent over the <span class=\"glossaryai-tooltip glossary-term-661\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/network\/\" target=\"_blank\">network<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Una rete, in informatica, indica un insieme di dispositivi interconnessi che comunicano e condividono risorse. Consente lo scambio di dati, favorisce la collaborazione e migliora l'efficienza operativa.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/network\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>. Questo rende pi\u00f9 semplice e rapido distribuire applicazioni in diversi ambienti.<\/p>\n<h3>Simplified Image Management<\/h3>\n<p>AUFS simplifies <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> management by providing a straightforward mechanism for <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> creation and modification. Developers can focus on building applications without worrying about the underlying storage complexities. The CoW model allows for rapid prototyping and testing, as changes can be easily made in new layers without affecting the original <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>.<\/p>\n<h2>Limitazioni di AUFS<\/h2>\n<h3>Problemi di compatibilit\u00e0<\/h3>\n<p>Uno dei limiti significativi di AUFS \u00e8 la sua compatibilit\u00e0. Mentre AUFS \u00e8 un filesystem potente, non \u00e8 supportato nativamente su tutte le distribuzioni Linux. Questo pu\u00f2 portare a sfide durante la configurazione di ambienti Docker su sistemi che non supportano AUFS. Alternative come OverlayFS, supportata dai kernel moderni, possono essere preferite per la loro ampia compatibilit\u00e0.<\/p>\n<h3>Performance Overheads<\/h3>\n<p>Sebbene AUFS sia efficiente nella gestione degli strati, pu\u00f2 introdurre sovraccarichi prestazionali in determinati scenari. Il filesystem deve gestire strati multipli di dati, il che potrebbe impattare le operazioni di I\/O, specialmente in ambienti ad alto carico. Sebbene ci\u00f2 non sia generalmente un problema per la maggior parte dei casi d'uso, \u00e8 cruciale che le applicazioni sensibili alle prestazioni tengano conto di questo potenziale svantaggio.<\/p>\n<h2>AUFS vs. Other Storage Drivers<\/h2>\n<h3>sistema di file overlay<\/h3>\n<p>OverlayFS \u00e8 un'alternativa moderna ad AUFS, introdotta nel kernel Linux 3.18. Offre funzionalit\u00e0 simili ma lo fa con meno dipendenze dal kernel e prestazioni migliori in alcuni casi d'uso. OverlayFS \u00e8 ora il driver di archiviazione predefinito per Docker su molti sistemi, in particolare su quelli che eseguono versioni recenti di Linux.<\/p>\n<h3>Btrfs<\/h3>\n<p>Btrfs \u00e8 un altro filesystem avanzato supportato da Docker. Offre funzionalit\u00e0 robuste come istantanee, sottovolumi e funzionalit\u00e0 RAID integrate. Sebbene Btrfs offra funzionalit\u00e0 di gestione dello storage pi\u00f9 avanzate rispetto ad AUFS, pu\u00f2 introdurre complessit\u00e0 aggiuntive nella configurazione e nella gestione.<\/p>\n<h3>ZFS<\/h3>\n<p>ZFS is a high-performance filesystem that also supports advanced features like snapshots, replication, and data integrity verification. Like Btrfs, ZFS is more complex to manage compared to AUFS, making it more suitable for environments requiring high data integrity and performance rather than simplicity.<\/p>\n<h3>Tabella di Confronto<\/h3>\n<table>\n<thead>\n<tr>\n<th>Caratteristica<\/th>\n<th>AUFS<\/th>\n<th>sistema di file overlay<\/th>\n<th>Btrfs<\/th>\n<th>ZFS<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Stratificazione<\/td>\n<td>S\u00ec<\/td>\n<td>S\u00ec<\/td>\n<td>S\u00ec<\/td>\n<td>S\u00ec<\/td>\n<\/tr>\n<tr>\n<td>Copy-on-Write<\/td>\n<td>S\u00ec<\/td>\n<td>S\u00ec<\/td>\n<td>S\u00ec<\/td>\n<td>S\u00ec<\/td>\n<\/tr>\n<tr>\n<td>Complessit\u00e0<\/td>\n<td>Basso<\/td>\n<td>Basso<\/td>\n<td>Medio<\/td>\n<td>Alto<\/td>\n<\/tr>\n<tr>\n<td>Supporto Sistemistico<\/td>\n<td>Limitato<\/td>\n<td>Largo<\/td>\n<td>Limitato<\/td>\n<td>Limitato<\/td>\n<\/tr>\n<tr>\n<td>Performance<\/td>\n<td>Moderate<\/td>\n<td>Alto<\/td>\n<td>Alto<\/td>\n<td>Molto Alto<\/td>\n<\/tr>\n<tr>\n<td>Advanced Features<\/td>\n<td>No<\/td>\n<td>No<\/td>\n<td>S\u00ec<\/td>\n<td>S\u00ec<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Configurazione di AUFS con Docker<\/h2>\n<p>To use AUFS with Docker, you need to have a compatible Linux kernel, typically 3.2 or later. Here are the steps to set up Docker with AUFS:<\/p>\n<h3>1. Install Docker<\/h3>\n<p>Prima, installa Docker sul tuo sistema Linux. Per i sistemi basati su Debian, puoi farlo con:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get install -y docker.io<\/code><\/pre>\n<p>Per i sistemi basati su Red Hat, utilizzare:<\/p>\n<pre><code class=\"language-bash\">sudo yum install -y docker<\/code><\/pre>\n<h3>2. Configurare Docker per Utilizzare AUFS<\/h3>\n<p>To configure Docker to use AUFS, you may need to edit the Docker <span class=\"glossaryai-tooltip glossary-term-667\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/daemon\/\" target=\"_blank\">demone<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un demone \u00e8 un processo in background nell'informatica che viene eseguito in modo autonomo, svolgendo compiti senza intervento dell'utente. Gestisce tipicamente funzioni a livello di sistema o applicativo, migliorando l'efficienza.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/daemon\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> file di configurazione. Puoi creare o modificare il <code>\/etc\/docker\/daemon.json<\/code> file and specify the storage driver:<\/p>\n<pre><code class=\"language-json\">{\n  \"storage-driver\": \"aufs\"\n}<\/code><\/pre>\n<h3>3. Riavvia Docker<\/h3>\n<p>Dopo aver apportato le modifiche, riavviare il <span class=\"glossaryai-tooltip glossary-term-692\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/docker-service\/\" target=\"_blank\">Docker service<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Docker Service is a key component of Docker Swarm, enabling the deployment and management of containerized applications across a cluster of machines. It automatically handles load balancing, scaling, and service discovery.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/docker-service\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> to apply the new configuration:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart docker<\/code><\/pre>\n<h3>4. Verificare la configurazione<\/h3>\n<p>To verify that AUFS is being used, <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/run\/\" target=\"_blank\">correre<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" si riferisce a un comando in diversi linguaggi di programmazione e sistemi operativi per eseguire un programma o script specificato. Avvia processi, fornendo un ambiente controllato per l'esecuzione dei compiti.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> il seguente comando:<\/p>\n<pre><code class=\"language-bash\">docker info | grep \"Storage Driver\"<\/code><\/pre>\n<p>Dovresti vedere <code>Storage Driver: aufs<\/code> in the output.<\/p>\n<h2>Best Practices for Using AUFS<\/h2>\n<p>Quando si utilizza AUFS nel proprio ambiente Docker, considerare le seguenti best practice:<\/p>\n<h3>1. Limit Layer Complexity<\/h3>\n<p>Mantenete il numero di livelli nelle vostre immagini Docker al minimo. Ogni comando in un <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un Dockerfile \u00e8 uno script contenente una serie di istruzioni per automatizzare la creazione di immagini Docker. Specifica l'immagine di base, le dipendenze dell'applicazione e la configurazione, facilitando la distribuzione coerente in diversi ambienti.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> creates a new layer, which can lead to bloated images. Combine commands where possible to reduce unnecessary layers.<\/p>\n<h3>2. Utilizzare i file .dockerignore<\/h3>\n<p>utilizzare <code>.dockerignore<\/code> files to exclude unnecessary files and directories from being added to your images. This not only helps in reducing <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\" target=\"_blank\">immagine<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> size but also improves build times.<\/p>\n<h3>3. Monitorare le Prestazioni<\/h3>\n<p>Monitora regolarmente le prestazioni dei tuoi container Docker e del file system AUFS sottostante, specialmente negli ambienti di produzione. Strumenti come <code>iostat<\/code> and <code>iotop<\/code> can help you gauge performance metrics.<\/p>\n<h3>4. Optimize Read\/Write Operations<\/h3>\n<p>Poich\u00e9 AUFS ha un meccanismo CoW, assicurati che la tua applicazione esegua operazioni di lettura anzich\u00e9 operazioni di scrittura pesanti per migliorare le prestazioni. Questo \u00e8 fondamentale per garantire che i tuoi contenitori operino in modo efficiente.<\/p>\n<h2>Conclusione<\/h2>\n<p>AUFS has played a significant role in shaping how Docker manages <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\" target=\"_blank\">container<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> images through its advanced layering and CoW capabilities. While it has limitations and is overshadowed by newer storage drivers like OverlayFS in many aspects, its historical significance and unique features cannot be overlooked.<\/p>\n<p>La comprensione dei fondamenti di AUFS offre agli sviluppatori e agli amministratori di sistema una migliore comprensione della gestione dell'archiviazione di Docker. Sfruttando i suoi vantaggi e seguendo le best practice, \u00e8 possibile ottimizzare la distribuzione di Docker per efficienza e prestazioni.<\/p>\n<p>As the Docker ecosystem continues to evolve, it is essential to keep abreast of developments in storage technologies and consider how they can best serve your applications. Whether you choose AUFS or explore alternatives, a robust understanding of these technologies will enable you to build and manage containers more effectively in a dynamic environment.<\/p>","protected":false},"excerpt":{"rendered":"<p>Docker AUFS is a union filesystem that allows multiple layers in <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\" target=\"_blank\">container<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/it\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> images, enabling efficient storage and management. It facilitates file system operations by merging directories, enhancing performance and flexibility.<\/p>","protected":false},"author":1,"featured_media":1669,"parent":0,"template":"","glossary-cat":[],"class_list":["post-1176","glossary","type-glossary","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Docker AUFS - Dockerpros<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dockerpros.com\/it\/wiki\/docker-aufs\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Docker AUFS - Dockerpros\" \/>\n<meta property=\"og:description\" content=\"Docker AUFS is a union filesystem that allows multiple layers in container images, enabling efficient storage and management. It facilitates file system operations by merging directories, enhancing performance and flexibility.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dockerpros.com\/it\/wiki\/docker-aufs\/\" \/>\n<meta property=\"og:site_name\" content=\"Dockerpros\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-22T20:51:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/\",\"url\":\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/\",\"name\":\"Docker AUFS - Dockerpros\",\"isPartOf\":{\"@id\":\"https:\/\/dockerpros.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg\",\"datePublished\":\"2024-07-22T20:45:08+00:00\",\"dateModified\":\"2024-07-22T20:51:10+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#primaryimage\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg\",\"width\":800,\"height\":600,\"caption\":\"docker-aufs-2\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dockerpros.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Glossary\",\"item\":\"https:\/\/dockerpros.com\/fr\/wiki\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Docker AUFS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dockerpros.com\/#website\",\"url\":\"https:\/\/dockerpros.com\/\",\"name\":\"Dockerpros\",\"description\":\"DockerPros \u2013 Your Ultimate Docker Resource Hub\",\"publisher\":{\"@id\":\"https:\/\/dockerpros.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dockerpros.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dockerpros.com\/#organization\",\"name\":\"Dockerpros\",\"url\":\"https:\/\/dockerpros.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"width\":532,\"height\":114,\"caption\":\"Dockerpros\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Docker AUFS - Dockerpros\n\nIn this article, we will discuss the Docker AUFS storage driver. AUFS is a union filesystem, which is used to combine multiple directories into a single filesystem. It is a layered filesystem, which means that it allows you to create multiple layers of changes on top of a base image. This makes it easy to create and manage Docker images.\n\nAUFS is the default storage driver for Docker on Ubuntu and Debian systems. It is also supported on other Linux distributions, but it may not be the default storage driver.\n\nTo use AUFS as the storage driver for Docker, you need to install the AUFS kernel module. You can do this by running the following command:\n\n```\nsudo apt-get install linux-image-extra-$(uname -r)\n```\n\nOnce the AUFS kernel module is installed, you can configure Docker to use AUFS as the storage driver. You can do this by editing the Docker daemon configuration file, which is located at `\/etc\/docker\/daemon.json`. Add the following line to the file:\n\n```\n\"storage-driver\": \"aufs\"\n```\n\nSave the file and restart the Docker daemon:\n\n```\nsudo systemctl restart docker\n```\n\nNow, Docker will use AUFS as the storage driver.\n\nAUFS has some advantages over other storage drivers. It is fast and efficient, and it allows you to create and manage Docker images easily. However, it also has some limitations. For example, it does not support some advanced features, such as overlay networks and volume plugins.\n\nIn conclusion, AUFS is a powerful and efficient storage driver for Docker. It is the default storage driver for Docker on Ubuntu and Debian systems, and it is supported on other Linux distributions as well. If you are using Docker on Ubuntu or Debian, you should consider using AUFS as the storage driver.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dockerpros.com\/it\/wiki\/docker-aufs\/","og_locale":"it_IT","og_type":"article","og_title":"Docker AUFS - Dockerpros","og_description":"Docker AUFS is a union filesystem that allows multiple layers in container images, enabling efficient storage and management. It facilitates file system operations by merging directories, enhancing performance and flexibility.","og_url":"https:\/\/dockerpros.com\/it\/wiki\/docker-aufs\/","og_site_name":"Dockerpros","article_modified_time":"2024-07-22T20:51:10+00:00","og_image":[{"width":800,"height":600,"url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Tempo di lettura stimato":"6 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/dockerpros.com\/wiki\/docker-aufs\/","url":"https:\/\/dockerpros.com\/wiki\/docker-aufs\/","name":"Docker AUFS - Dockerpros\n\nIn this article, we will discuss the Docker AUFS storage driver. AUFS is a union filesystem, which is used to combine multiple directories into a single filesystem. It is a layered filesystem, which means that it allows you to create multiple layers of changes on top of a base image. This makes it easy to create and manage Docker images.\n\nAUFS is the default storage driver for Docker on Ubuntu and Debian systems. It is also supported on other Linux distributions, but it may not be the default storage driver.\n\nTo use AUFS as the storage driver for Docker, you need to install the AUFS kernel module. You can do this by running the following command:\n\n```\nsudo apt-get install linux-image-extra-$(uname -r)\n```\n\nOnce the AUFS kernel module is installed, you can configure Docker to use AUFS as the storage driver. You can do this by editing the Docker daemon configuration file, which is located at `\/etc\/docker\/daemon.json`. Add the following line to the file:\n\n```\n\"storage-driver\": \"aufs\"\n```\n\nSave the file and restart the Docker daemon:\n\n```\nsudo systemctl restart docker\n```\n\nNow, Docker will use AUFS as the storage driver.\n\nAUFS has some advantages over other storage drivers. It is fast and efficient, and it allows you to create and manage Docker images easily. However, it also has some limitations. For example, it does not support some advanced features, such as overlay networks and volume plugins.\n\nIn conclusion, AUFS is a powerful and efficient storage driver for Docker. It is the default storage driver for Docker on Ubuntu and Debian systems, and it is supported on other Linux distributions as well. If you are using Docker on Ubuntu or Debian, you should consider using AUFS as the storage driver.","isPartOf":{"@id":"https:\/\/dockerpros.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#primaryimage"},"image":{"@id":"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#primaryimage"},"thumbnailUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg","datePublished":"2024-07-22T20:45:08+00:00","dateModified":"2024-07-22T20:51:10+00:00","breadcrumb":{"@id":"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dockerpros.com\/wiki\/docker-aufs\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#primaryimage","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/docker-aufs_1176.jpg","width":800,"height":600,"caption":"docker-aufs-2"},{"@type":"BreadcrumbList","@id":"https:\/\/dockerpros.com\/wiki\/docker-aufs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dockerpros.com\/"},{"@type":"ListItem","position":2,"name":"Glossary","item":"https:\/\/dockerpros.com\/fr\/wiki\/"},{"@type":"ListItem","position":3,"name":"Docker AUFS"}]},{"@type":"WebSite","@id":"https:\/\/dockerpros.com\/#website","url":"https:\/\/dockerpros.com\/","name":"Esperti Docker","description":"DockerPros \u2013 Il tuo punto di riferimento definitivo per Docker","publisher":{"@id":"https:\/\/dockerpros.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dockerpros.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/dockerpros.com\/#organization","name":"Esperti Docker","url":"https:\/\/dockerpros.com\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","width":532,"height":114,"caption":"Dockerpros"},"image":{"@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/glossary\/1176","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/glossary"}],"about":[{"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/types\/glossary"}],"author":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":0,"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/glossary\/1176\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/media\/1669"}],"wp:attachment":[{"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/media?parent=1176"}],"wp:term":[{"taxonomy":"glossary-cat","embeddable":true,"href":"https:\/\/dockerpros.com\/it\/wp-json\/wp\/v2\/glossary-cat?post=1176"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}