Docker je bistveno orodje za enostavno namestitev aplikacij, ki lahko poganjajo vaša spletna mesta in storitve, upravljanje z docker-compose pa je še lažje.
Nekateri projekti ne prihajajo z datotekami za sestavljanje dockerjev in je zamudno, da jih ustvarite sami. docker-autocompose lahko ustvari delujočo datoteko docker-compose iz katerega koli delujočega vsebnika Docker.
Nekatere aplikacije Docker nimajo datotek za sestavljanje
Docker je odprtokodna platforma za uvajanje aplikacij v povezanih komponentah, znanih kot vsebniki. Če uporabljate Docker, vam ni treba skrbeti za odvisnosti ali interakcije med storitvami, saj so te običajno do neke mere vnaprej konfigurirane.
Docker lahko uporabite za uvajanje aplikacij, vključno s specializiranimi strežniki, distribucijami Linuxa ali slikami po meri. Zagon aplikacij z Dockerjem je razmeroma enostaven in lahko zagotovi, da imate vedno najnovejšo različico programske opreme.
Če niste seznanjeni s konceptom dockeriziranih aplikacij, preberite naš osnovni vodnik zakaj bi morali uporabljati Docker namesto virtualnega stroja.
Ukazi Docker so dolgi in se običajno izvajajo kot en sam ukaz, ki določa vse ustrezne spremenljivke. Nerodno jih je vnašati in čeprav lahko datoteki .bashrc dodate vzdevek, pogosto pride do ponavljajočega pritiskanja Ctrl + R da poiščete natančen ukaz Docker, ki ga želite.
Docker Compose je orodje, ki vam pomaga pri medsebojni interakciji in orkestraciji. Tako učinkovito vam pomaga pri upravljanju vsebnikov Docker, da se mnogi uporabniki sploh ne naučijo uporabljati Docker. Zakaj bi, ko pa je vse, kar morate storiti, prenesti eno datoteko YAML in jo prikazati s preprostim dvobesednim ukazom?
Čeprav imajo številne aplikacije, ki jih lahko uvede Docker, datoteke za sestavljanje, jih nimajo vse, kar otežuje hitre in čiste namestitve in uvajanja Dockerja. To je še posebej pogosto pri aplikacijah za manj standardno strojno opremo, kot sta ARM64 in ARMhf.
Če raje uporabljate docker-compose kot neobdelani Docker, se lahko odločite, da ne boste uporabili določenega dela programske opreme, če v repozitoriju GitHub projekta ni priročnega docker-compose.yml.
docker-autocompose poenostavi samodejno ustvarjanje datoteke za sestavljanje
docker-autocompose je aplikacija Python, ki lahko ustvari delujočo datoteko Compose iz katerega koli delujočega vsebnika Docker.
To pomeni, da morate najprej samo zagnati ukaz docker, nato vzeti ustvarjeni izhod in zagnati aplikacijo z uporabo docker-compose v prihodnosti ali pa ga dodate v obstoječo datoteko Compose za upravljanje vseh vaših storitev na enkrat.
Kako namestiti docker-autocompose na Linux
Ker je docker-autocompose na voljo kot aplikacija Python, morate imeti v sistemu Linux nameščen Python PIP.
Če želite namestiti Python PIP na Debian ali Ubuntu:
sudo apt namestite python3-pip
Namestite PIP na Arch Linux in njegove izpeljanke z:
sudo pacman -S python-pip
Če želite namestiti PIP na CentOS in Red Hat Enterprise Linux, zaženite:
sudo njam namestite python3 python3-kolo
Ni treba posebej poudarjati, da morate tudi vi imeti nameščena Docker in Docker Compose.
Klonirajte repozitorij GitHub za docker-autocompose in se premaknite v nov imenik:
git klon https://github.com/Red5d/docker-autocompose.git
cd docker-autocompose
Zdaj namestite docker-autocompose tako, da zaženete:
sudopython3nastaviti.pynamestite
docker-autocompose je zdaj nameščen.
Uporabite docker-autocompose za ustvarjanje datotek za sestavljanje
Pogosto med iskanjem osnovne aplikacije za Linux, naleteli boste na izjemen projekt, ki je opremljen s slikami Docker, vendar brez datoteke Compose. Primer tega je odličen odjemalec IRC, dostopen prek brskalnika, Odprema.
Ustvarite imenik, ki ga bo uporabljal Dispatch:
mkdir ~/pošiljanje
Prenesite in zaženite odjemalca na vratih 8080 vašega lokalnega računalnika z:
docker run -p 8080:80 -v /home/david/dispatch:/podatki --restart no -d khlieng/odprema
Obiščite localhost: 8080 v svojem brskalniku, da preverite, ali Dispatch deluje, nato povejte docker-autocompose, naj ustvari vsebino datoteke Compose iz tekočega vsebnika z:
sudo autocompose.py <ime-ali-id-vsebnika>
V tem primeru je ime vsebnika dispatch, ID vsebnika pa se bo pojavil kot izhod v vašem terminalu takoj po zagonu ukaza docker.
Lahko pa ustvarite vsebino datoteke Compose, ki jo lahko uporabite za zagon vseh svojih delujočih vsebnikov Docker z:
sudo autocompose.py $(docker ps -aq)
Datoteka Docker Compose ne bo ustvarjena, zato morate kopirati stdout v odložišče in nato ustvariti novo datoteko z:
nanodocker-compose.yml
Prilepite vsebino odložišča, nato shranite in zapustite nano z Ctrl + O, potem Ctrl + X.
Zdaj lahko zaženete vse svoje vsebnike hkrati z:
docker-compose up -d
Lahko pa zaženete docker-autocompose s samim Dockerjem tako, da zaženete:
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/red5d/docker-autocompose <dodatna-imena-ali-id-ji>
... to je ukaz, ki vas spomni, zakaj potrebujete docker-autocompose za začetek.
Takoj ustvarite delujoče datoteke za sestavljanje iz zagnanih vsebnikov Docker
Docker in Docker Compose sta vedno bolj pomemben del ekosistema aplikacij za Linux in se dokazujeta še posebej dragoceno za samostojna gostovanja spletnih mest in storitev na vseprisotni enojni plošči Raspberry Pi računalnik.
Če še niste začeli svoje poti k ustvarjanju lastnega spletnega ekosistema, si oglejte nekaj izjemnih spletnih projektov, ki jih lahko izvajate na Pi.