Kako nadograditi na Docker Compose v2
Web agencija » Digitalne vijesti » Kako nadograditi na Docker Compose v2

Kako nadograditi na Docker Compose v2

Nakon gotovo godinu dana u beta verziji, Docker Compose v2 općenito je dostupan kao stabilna verzija alata za upravljanje spremnikom. Većina korisnika trebala bi se moći prebaciti već danas. U ovom ćemo vam vodiču pokazati kako pripremiti i primijeniti nadogradnju.

Što je novo u v2?

Docker Compose v2 donosi poznate značajke Composea u svakodnevni život docker CLI. Umjesto interakcije s drugim docker-compose binarni koji sada koristite docker compose. Compose je integriran s Dockerom.

Naredbe možete zamijeniti ovako:

$ docker-compose up -d

Sa sljedećim pozivom:

$ docker sastaviti -d

Compose v2 također dolazi s nekoliko novih značajki koje poboljšavaju korisničko iskustvo:

  • Možete koristiti docker compose cp za kopiranje datoteka između glavnog računala i spremnika.
  • Pružatelji usluga u oblaku valjani su ciljevi koji vam omogućuju docker compose up za postavljanje spremnika na Amazon ECS ili Microsoft ACI.
  • Profili usluge su u potpunosti podržani, što olakšava selektivno uključivanje spremnika u hrpu.
  • Pojednostavljeno upravljanje projektima: izvršavajte naredbe bez da ste u istom direktoriju kao i vaš docker-compose.yml mapa sa docker compose --project-name my-project stop . Tu je i novi docker compose ls naredba koja ispisuje sve vaše Compose projekte.
  • Docker Compose sada je napisan u Gou, kao i sam Docker, umjesto da bude zasebni uslužni program Pythona. To omogućuje Composeu ponovno korištenje osnovnog Docker CLI koda, stvarajući dosljednije ponašanje.

Nekompatibilnosti s v1

Compose v2 je kompatibilan s v1 u gotovo svim slučajevima upotrebe. Ne morate mijenjati svoj docker-compose.yml datoteke ili naučiti nove naredbe, s izuzetkom mijenjanja docker-compose à docker compose. Ako imate vlastiti alat u blizini docker-compose naredbu, možete je promijeniti u call docker compose Umjesto toga.

Iako bi većina migracija trebala biti jednostavna, Compose v2 uvodi nekoliko ključnih promjena koje bi mogle utjecati na određene slučajeve upotrebe:

  • Spremnici se sada stvaraju s crticama u nazivima umjesto podvlakama. Znači usluga tzv db unutar app projekt će sada stvoriti spremnik pod nazivom app-dbumjesto app_db. To bi moglo pokvariti skripte koje očekuju korištenje starog formata naziva spremnika. Promjena se trenutno može onemogućiti uključivanjem --compatibility zastava s docker compose narudžbe.
  • docker compose build izgrađeno s BuildKitom prema zadanim postavkama. BuildKit je Dockerov moderni sustav slikanja, koji može mnogo brže graditi međugradnje. BuildKit je preporučeni sustav izrade, ali još uvijek postoje neke nekompatibilnosti s naslijeđenim mehanizmom izgradnje koje bi mogle uzrokovati probleme pod određenim okolnostima. Možete onemogućiti BuildKit postavljanjem DOCKER_BUILDKIT=0 varijabla okruženja prije pokretanja docker compose narudžbe.
  • Neke zastarjele oznake naredbi su uklonjene. docker compose rm --all nije podržan i docker compose scale naredba je izostavljena u korist docker compose up --scale. Morat ćete izmijeniti sve skripte koje se oslanjaju na docker-compose verzije ovih naredbi.

Nadogradnja na Linux

Iako se Compose sada integrira s Docker CLI-jem, nije omogućen prema zadanim postavkama u Docker Engineu. Možete instalirati Compose v2 tako da ga dodate kao Docker CLI dodatak. Morate imati Docker verziju v20.10.13 ili noviju.

Ažurirajte svoja spremišta paketa i instalirajte docker-compose-plugin:

$ sudo apt ažuriranje $ sudo apt instalirajte docker-compose-plugin

Provjerite je li instalacija bila uspješna dohvaćanjem verzije Docker Compose:

$ docker compose verzija Docker Compose verzija v2.3.3

Sada možete ukloniti Docker Compose v1, osim ako ga ne želite zadržati radi kompatibilnosti s naslijeđenim skriptama. Oba docker-compose (v1) i docker compose (v2) mogu koegzistirati ako ih trebate. Ako uklonite v1, obično se nalazi kao jedna binarna datoteka na /usr/local/bin/docker-compose:

$ sudo rm /usr/local/bin/docker-compose

Sada možete konfigurirati alias ljuske za preusmjeravanje docker-compose à docker compose. To bi vam omogućilo da nastavite koristiti skripte koje očekuju Compose v1, koristeći vašu novu instalaciju v2.

$ echo 'alias docker-compose="docker compose"' >> ~/.bashrc $ izvor ~/.bashrc $ docker-compose verzija Docker Compose verzija v2.3.3

Sada ste spremni za početak upravljanja svojim spremnicima uz Compose v2.

Nadogradite s Docker Desktop za Windows i Mac

Compose v2 uključen je u Docker Desktop verzije 3.4 i novije. v2 je postala zadana verzija Compose u v4.4.2; ako ste već preuzeli nadogradnju, možete koristiti docker compose aujourd'hui.

slika upravljanja Docker Compose v2 u postavkama Docker Desktop

v4.4.2 također aliasi docker-compose à docker compose automatski. Compose v1 nedostupan je prema zadanim postavkama. Možete onemogućiti ovaj aliasing pokretanjem docker-compose disable-v2 naredbu ili poništavanjem oznake u potvrdnom okviru "Use Docker Compose v2" na stranici postavki Docker Desktop. The docker-compose Kontrola će se zatim vratiti na korištenje Compose v1.

A poslije?

Compose v1 ostaje podržan za sigurnosne probleme i ispravke bugova "visoke ozbiljnosti" sljedećih šest mjeseci. Ova će podrška prestati u listopadu 2022. v1 će se tada smatrati isteklom životnom vijeku, pa bi njezinu upotrebu trebalo izbjegavati. U ovom trenutku Docker Desktop bit će ažuriran na seulement podrška v2. Morat ćete koristiti docker compose kao docker-compose aliasing će biti uklonjen. Morat ćete se držati starije verzije ako još uvijek trebate v1.

Možete nastaviti koristiti v1 na neodređeno vrijeme tako da ga instalirate kao samostalnu binarnu datoteku. Možete ih pronaći objavljene za Windows, Mac i Linux na GitHub stranici za izdanja projekta. Iako će ove binarne datoteke nastaviti raditi neograničeno dugo, većina projekata trebala bi težiti nadogradnji na v2 u bliskoj budućnosti. To će vam omogućiti pristup svim ispravcima grešaka, sigurnosnim ažuriranjima i novim značajkama u modernim verzijama Compose v2.

Sommaire

Docker Compose v2 sada je stabilna verzija Docker Composea. Korisnici Docker Desktopa bit će automatski nadograđeni. Linux instalacije Docker Enginea podržane su novim docker-compose-plugin CLI dodatak.

Podrška za Compose v1 prestaje za manje od šest mjeseci. Stoga biste trebali provjeriti jesu li vaše skripte kompatibilne, a zatim usvojiti v2 u nadolazećim tjednima. Moći ćete koristiti Compose u docker CLI i koristi od v2 značajki kao što su servisni profili i docker compose ls zapovijedati.

★ ★ ★ ★ ★