Quadlet omogućuje deklariranje Podman spremnika kao nativnih systemd jedinica. Umjesto pokretanja naredbe podman generate systemd nad aktivnim spremnikom ili održavanja ručno pisanih omotača, opisujete željeni spremnik u .container datoteci. Podmanov Quadlet generator čita tu datoteku tijekom pokretanja sustava i nakon daemon-reload, zatim izlaže normalnu uslugu systemd-u. Izvor ostaje dovoljno mali za pregled i čuvanje u Git-u.
Za rootful uslugu stvorite /etc/containers/systemd/app.container. Rootless usluga pripada na ~/.config/containers/systemd/app.container za račun koji je posjeduje:
[Unit]
Description=Primjer web usluge
After=network-online.target
Wants=network-online.target
[Container]
Image=ghcr.io/example/app:1.4.2
ContainerName=example-app
PublishPort=127.0.0.1:8080:8080
Volume=appdata.volume:/var/lib/app:Z
Network=appnet.network
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=multi-user.target default.target
Deklarirajte prateće jedinice uz nju kao appdata.volume i appnet.network. Quadlet stvara graf zavisnosti, tako da systemd pokrene volumen i mrežu prije spremnika. Prikvačite oznaku slike ili digest umjesto korištenja latest; deklarativna datoteka ne smije tiho promijeniti ponašanje pri sljedećem pull-u. Spremite tajne u Podman secrets ili systemd credential mehanizam umjesto ugrađivanja u jedinicu.
Ponovno učitajte i pokrenite uslugu naredbama systemctl daemon-reload zatim systemctl start app.service. Rootless korisnici trebaju upravitelja korisnika koji preživi odjavu, obično omogućenog s loginctl enable-linger USER. Provjerite generiranu jedinicu s systemctl cat app.service, istražite neuspjehe pomoću journalctl -u app.service, te validirajte izlaz generatora s systemd-analyze --user --generators=true verify app.service u rootless načinu. Rootful provjere izostavljaju --user.
Quadlet ovisi o cgroup v2 i dovoljno novoj Podman inačici. Generirane jedinice nisu obične ručno pisane datoteke, stoga ne uređujte njihove kopije pod /run niti očekujte koristan systemctl enable tijek; izrazite namjeru pokretanja kroz [Install]. Rootless spremnici također ne mogu se osloniti na sistemsku direktivu User=, a SELinux označavanje može uzrokovati neuspjeh bind mounta dok :Z ili :z ne odgovara zahtjevu dijeljenja. Quadlet je dobar izbor za nekoliko poslužiteljskih usluga. Kubernetes ili Compose ostaju lakši kada aplikacija treba višehostovsko raspoređivanje, opsežno predloškovanje ili kada veliki tim već upravlja tim sustavima.
Povezana područja
Savjetodavna područja vezana uz ovu temu
Ova su područja rada usklađena s temom članka i daju čišći prijelaz od edukativnog sadržaja do konkretne implementacije.
Nastavite čitati
Povezani članci
Prvo po zajedničkim kategorijama, a zatim po najjačem preklapanju u tagovima.