Close Menu
Stiri IT
    Facebook X (Twitter) Instagram
    Stiri IT
    • Tech
      • Mobile
      • Hardware
      • Aplicatii
      • Internet
      • Cybersecurity
      • Auto
    • Reviews
    • Stiinta
    • Divertisment
      • Jocuri
      • Filme
      • Seriale
    • Resurse
      • Ghiduri
      • Cum Sa
      • Info utile
      • Comunicate de presă
      • Oferte
      • Iluzii optice
      • Invenții și Descoperiri
      • Camere web live
      • Test viteza internet
      • Vremea
      • Curs valutar BNR
    • Despre
      • Contact NewIT.ro
      • Confidențialitate
      • Publicitate
      • Termeni si conditii
    Stiri IT
    Prima pagină » Cum se actualizează containerele Docker pentru a aplica actualizări de imagine – CloudSavvy IT
    Cum sa

    Cum se actualizează containerele Docker pentru a aplica actualizări de imagine – CloudSavvy IT

    Tripon AlinBy Tripon Alin08/09/20210
    Share Facebook Twitter Pinterest Copy Link LinkedIn Tumblr Email Telegram WhatsApp Reddit
    1630432160 Cum sa verificati daca Docker Daemon sau un container ruleaza
    1630432160 Cum sa verificati daca Docker Daemon sau un container ruleaza

    Ilustrație care prezintă sigla Docker

    Containerele Docker sunt menite să fie de unică folosință și ușor de înlocuit. Când este lansată o nouă versiune a imaginii de bază a unui container, ar trebui să trageți noua imagine și să începeți o nouă instanță de container. Iată cum să gestionați actualizările de imagine în flota de containere.

    Extragerea de imagini noi

    Modul de bază de aplicare a unei actualizări de imagine este de a trage noua imagine, de a distruge containerele care rulează pe baza versiunii vechi și apoi de a începe containere noi în locul lor.

    Iată un exemplu pentru un container care utilizează nginx:latest imagine:

    # Pull new image
    docker pull nginx:latest
    
    # Delete old container by name
    docker rm example-nginx
    
    # Start a new container
    docker run -d -p 80:80 --name example-nginx nginx:latest

    Lui Docker îi lipsește un mod încorporat de a detecta actualizările de imagine și de a înlocui containerele care rulează. Rezultatul este un proces complicat de înlocuire manuală. Poate fi simplificat folosind Docker Compose pentru a porni containerele în loc de simplu docker run comanda.

    Înlocuirea containerelor cu Docker Compose

    Docker Compose vă permite să creați reprezentări declarative ale stivelor de containere utilizând un docker-compose.yml fişier. Stiva este pornită cu docker-compose up, folosind configurația conținută în fișier. Aceasta înlocuiește lista lungă de steaguri date de obicei docker run.

    Docker Compose are un dispozitiv încorporat pull comandă care va extrage versiunile actualizate ale tuturor imaginilor din stiva dvs. Este încă o procedură în două etape, deoarece trebuie să rulați manual docker-compose up din nou după aceea.

    # Pull all images in the stack
    docker-compose pull
    
    # Restart the stack
    # If a new image version has been pulled, containers 
    # using the old tag will be replaced with new instances.
    docker-compose up -d

    Docker Compose oferă o experiență mai simplă și mai memorabilă în care nu este nevoie să tastați numele imaginilor sau să vă amintiți steagurile către care ați trecut docker run. Cele două comenzi pot fi scurtate cu ușurință la un singur alias de shell:

    alias composePullUp="docker-compose pull && docker-compose up -d"

    Trebuie să faceți referire la eticheta corectă atunci când trageți manual imagini. Docker Compose se va ocupa de acest lucru și va selecta etichetele specificate în docker-compose.yml.

    Extragerea noii versiuni a unei etichete nu este neapărat aceeași cu utilizarea celei mai recente versiuni a unei imagini. Dacă doriți să utilizați cea mai recentă versiune de software interior container, fiți atenți la practicile de etichetare ale autorului imaginii.

    Citeste si  Cum să avansați rapid printr-un videoclip TikTok

    De exemplu, extragerea unei noi versiuni de node:14 vă va oferi cea mai recentă versiune de patch-uri a Node.js 14. Pulling node:latest va livra cea mai recentă versiune Node.js, în prezent 16. Dacă un container vechi folosea această imagine, un proces de tragere și înlocuire ar declanșa o versiune majoră pentru versiunea binară a nodului din interiorul containerului.

    Reconstruirea imaginilor

    Până acum am văzut cum să gestionăm containerele pornite de la imagini pe care le extrageți direct din Docker Hub sau dintr-un alt registru. Imaginile pe care le construiți singure trebuie să fie reconstruite atunci când imaginea lor de bază se schimbă.

    Mai întâi reconstruiți imaginea:

    docker build --pull -t my-image:latest .

    Apoi înlocuiți containerele:

    # Delete old container by name
    docker rm my-container
    
    # Start a new container
    docker run -d --name my-container my-image:latest

    The --pull steag dat docker build îi instruiește lui Docker să tragă imaginea de bază la care se face referire în Dockerfile. Fără acest semnal, Docker ar refolosi referința de etichetă existentă dacă imaginea ar fi deja prezentă pe sistem.

    Utilizatorii Docker Compose pot obține aceleași rezultate cu cele corespunzătoare docker-compose comenzi:

    docker-compose build --pull
    
    docker-compose up -d

    Compune din nou oferă un proces mai simplu, deși încă în două etape. Puteți uita nume și etichete specifice imaginii, în loc să aveți încredere în Compunere pentru a trage imagini de bază modificate, pentru a vă reconstrui straturile deasupra lor și apoi pentru a vă recrea containerele.

    Software în interiorul containerelor

    Uneori poate fi tentant să actualizați manual software-ul interior containerele dvs. Acest lucru ar trebui evitat deoarece merge din nou principiile lui Docker.

    Citeste si  Cum să faceți backup pentru Gmail

    Alergare apt-get update && apt get upgrade -y pe un program (sau colegii managerului de pachete) este o practică standard atunci când se administrează un server Linux bare metal. Aceste comenzi nu sunt executate în mod normal într-un container Docker, deși pot fi incluse ca parte a unui Dockerfile pentru a obține cele mai recente patch-uri de securitate în timpul unei construcții de imagini.

    Tragerea periodică a imaginii de bază și recreerea containerelor dvs. este modalitatea preferată de a le menține actualizate. Acest lucru vă oferă toate remediile de securitate din amonte și scurtează durata de viață a containerelor individuale. Mediile de containere nu sunt menite să fie modificate după crearea unei instanțe; modificările sistemului de fișiere ar trebui să fie limitate la scrieri pe căi temporare și volume dedicate Docker care supraviețuiesc containerului.

    Automatizarea actualizărilor de containere

    Puteți automatiza procesul de verificare a etichetelor de imagine actualizate și de repornire a containerelor folosind proiecte de la terți. Watchtower este o alegere populară care monitorizează containerele care rulează și le înlocuiește atunci când imaginea lor Docker Hub se schimbă.

    Watchtower în sine este implementat ca un container:

    docker run -d -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower

    Acum aveți o instalare funcțională Watchtower. Soclul Docker al gazdei dvs. este montat în containerul Watchtower, permițându-i să ruleze comenzi Docker pentru a crea și șterge containere.

    Watchtower va detecta automat noi lansări de imagini pe Docker Hub, le va trage la aparatul dvs. și va înlocui containerele folosind imaginea. Containerele existente vor fi închise și vor fi create noi identice în locul lor. Aceleași steaguri cărora le-ați dat docker run vor fi furnizate containerelor de schimb.

    Citeste si  Cum se activează tastatura tactilă pe Windows 11

    Watchtower funcționează numai cu Docker Hub în mod implicit. Puteți să-l utilizați cu registre de imagini private furnizând acreditări într-un fișier de configurare.

    Creați un fișier JSON cu următorul conținut:

    {
        "auths": {
            "example.com": {
                "auth": "credentials"
            }
        }
    }

    A inlocui example.com cu calea către registrul dvs.

    Apoi generați un șir de acreditări din numele de utilizator și parola din registru:

    echo -n 'username:password' | base64

    Lipiți șirul codat Base64 rezultat în fișierul de configurare, înlocuind credentials text substituent.

    Montați fișierul de configurare în containerul Watchtower pentru a permite accesul la registru:

    docker run -d 
        -v config.json:/config.json
        -v /var/run/docker.sock:/var/run/docker.sock 
        containrrr/watchtower

    Concluzie

    Docker nu are niciun mecanism pentru a detecta și a aplica actualizări de imagine în amonte la containerele dvs. care rulează. Puteți utiliza comenzile Docker CLI în ordine, docker-compose ca o abstractizare la nivel superior sau ca un instrument terță parte, cum ar fi Watchtower, pentru a vă înlocui containerele atunci când sunt lansate noi versiuni de imagine.

    În funcție de circumstanțele dvs., este posibil să nu simțiți deloc nevoia de a actualiza containerele în acest mod. Dacă echipa dvs. folosește conducte CI pentru a crea o imagine Docker pe fiecare commit, este posibil să fiți deja producători și implementați imagini actualizate de mai multe ori pe zi. În acest caz, asigurați-vă că utilizați fișierul --pull steag cu docker build deci remedierile din amonte sunt incluse în imaginile dvs.

    Follow on Google News
    Share. Facebook Twitter Pinterest WhatsApp Copy Link
    Previous ArticleOnePlus 9 RT va fi lansat în octombrie
    Next Article SpaceX va achiziționa Swarm Technologies pentru pornirea prin satelit
    Tripon Alin
    • Website

    Alin Tripon Fondator NewIT.ro, pasionat de tehnologie, maşini, divertisment, ştiinţa şi jocuri video, am creat acest portal de ştiri it, tutoriale, ghiduri şi alte informații utile. Pasionat de lumea digitală și cultura tech, în timpul liber îmi îmbogățesc cunoștințele ce țin de marketing digital, în special SEO.

    Articole similare

    Cum să aruncați o saltea veche în mod responsabil

    23/07/2024

    Cum poti impacheta mai eficient lucrurile in trolere?

    31/01/2024

    Cum să salvați pagini PDF ca imagini JPG în Windows și macOS

    19/07/2023
    Add A Comment
    Leave A Reply Cancel Reply

    Follow Us
    • Facebook
    • Twitter
    • Pinterest
    Popular Posts

    Ai început să vorbești ca ChatGPT

    19/01/2026

    Cum să dezactivați rapid notificările enervante pe Mac

    03/12/2020

    Top 5 aplicații de descărcat muzică gratis direct pe telefon sau tabletă Android

    21/04/2020

    Mutare majoră pe piața TV: TCL preia afacerea de televizoare a Sony

    21/01/2026

    Transform Your VR Setup into a Gamer’s Paradise with These Accessories

    13/05/2022
    Recommended Posts

    Mutare majoră pe piața TV: TCL preia afacerea de televizoare a Sony

    21/01/2026

    Ai început să vorbești ca ChatGPT

    19/01/2026

    Apple lansează Creator Studio, rival direct al Adobe

    13/01/2026

    Android 16 primește o funcție majoră de accesibilitate auditivă

    13/03/2025

    E-commerce Wojas: Cum să cumperi confortabil pantofi online?

    13/03/2025
    Popular Tags
    AI android apple cripto criptomonede culture disney plus elon musk featured filme online Gadgets gaming google GPU hbo max Hot ios iphone leisure Lifestyle masini electrice meta microsoft NASA netflix newit.ro News nintendo pamant Phones placa video gaming placa video jocuri playstation procesor gaming procesor jocuri review samsung seriale online Smart Home streaming Tech Technology tiktok trending twitter

    NewIT este un site de știri IT dedicat tehnologiei moderne, inteligenței artificiale și securității cibernetice. Publicăm zilnic articole despre Apple, Microsoft, Google și cele mai importante lansări software și hardware. Dacă te interesează ultimele informații din domeniul tech, update-uri de sistem, internet, AI și gadgeturi, aici găsești cele mai relevante știri IT actualizate constant.

    Facebook X (Twitter) YouTube RSS
    © 2025 Toate drepturile rezervate.
    • DESPRE NOI
    • CONTACT
    • CONFIDENTIALITATE
    • POLITICA COOKIE
    • TERMENI

    Type above and press Enter to search. Press Esc to cancel.