Dîroka pirsgirêka koçberiya hilanîna docker (roota docker)

Ne zêdeyî du roj berê, li ser yek ji serveran biryar hate girtin ku hilanîna docker (pelrêça ku docker hemî pelên konteynir û wêneyan hildide) veguhezîne beşek cûda, ku
kapasîteya mezintir hebû. Karê sivik xuya dikir û pêşbîniya tengahiyê nedikir...

Destpêkirin:

1. Hemî konteynerên serîlêdana me rawestînin û bikujin:

docker-compose down

heke gelek konteynir hebin û ew di pêkhateyên cûda de ne, hûn dikarin vê bikin:

docker rm -f $(docker ps -q)

2. Daemonê docker rawestînin:

systemctl stop docker

3. Pelrêçê biguhezînin cîhê ku tê xwestin:

cp -r /var/lib/docker /docker/data/storage

4. Em ji docker daemon re dibêjin ku di pelrêça nû de binêre. Gelek vebijark hene: an ala -g bikar bînin da ku daemon ber bi rêyek nû ve nîşan bidin, an jî vesazên pergalê, ku me bikar anîne. An jî girêdanek sembolîk. Ez ê li ser vê yekê pir hûrgulî nekim, ew li ser Înternetê ye. tijî manualên li ser veguheztina root docker bo cîhek nû.

5. Daemon docker dest pê bikin û pê ewle bibin ku ew li cîhê rast xuya dike:

systemctl status docker

Di yek ji rêzikên derketinê de divê em bibînin:

├─19493 /usr/bin/dockerd --data-root=/docker/data/storage

Me piştrast kir ku vebijark ji daemon re derbas bûye, naha em kontrol bikin ka ew wê sepandiye (spas inkvizitor68sl)!

docker info | awk '/Root Dir/ {print $NF}' 

6. Ka em serîlêdana xwe dest pê bikin:

docker-compose up -d

7. Kontrol bikin

Û li vir şahî dest pê dike, DBMS, MQ, her tişt baş e! Database saxlem e, her tişt dixebite... ji bilî nginx. Em bi Kerberos û courtesan re avakirina nginx xwe heye. Û dîtina têketinên konteynerê destnîşan kir ku ew nikare li /var/tmp binivîse - Destûr hate red kirin. Ez bi tiliyên xwe perestgehên xwe hevîr dikim û hewl didim ku rewşê analîz bikim... Ev çawa gengaz e? Wêneyê Docker neguherî. Me tenê pelrêça bar kir. Ew her gav xebitî, û li vir ew ji bo we ye... Ji bo ceribandinê, ez bi destên xwe ketim nav konteynerê û mafên vê pelrêça guherandim, hebûn kok, kok 755, da kok, kok 777. Û her tişt dest pê kir... Ramanek di serê min de dest pê kir - celebek bêaqilî ... Min fikir kir, baş e, dibe ku min tiştek hesab nekir...

Min biryar da ku em di dema veguheztinê de ji mafên gihîştina pelan hez kirin. Me serîlêdan, docker daemon rawestand, pelrêça nû jêbirin û pelrêça /var/lib/docker bi karanîna kopî kir. rsync -a.

Ez difikirim ku niha her tişt baş e, em serlêdana Docker bilind bikin.

Aaand... kêşe ma... Çavê min hejand. Min lez da konsolxaneya makîneya xweya virtual, ku ez ceribandinên cihêreng dimeşînim, min ev wêneyê nginx girt, û ez hilkişiyam hundurê konteynerê, û li vir mafên pelrêça /var/tmp root, root 777 in. Ango, heman wekî ku min neçar kir ku bi destan saz bikim. Lê wêne yek in!

Pergala pelê xfs li her derê hate bikar anîn.

Min bi karanîna fermanê berhev kir

docker inspect my-nginx:12345

Hemî haş wek hev in, hemî yek bi yek. Hem li ser serverê û hem jî li ser makîneya min a virtual. Min wêneya nginx ya herêmî jê kir û ew dîsa ji qeydê kişand, ku ji ber çend sedeman li ser heman makîneyê ye. Û pirsgirêk heman e... Niha çavê min ê duyemîn diqelişe.

Ji xeynî qîrîna “AAAAAAAAA” û tiştên din çi fikir di serê min de hebûn êdî nayê bîra min. Saet 4 danê sibê bû, û koda çavkaniyê ya Docker hate bikar anîn da ku prensîba hejandina qatên wêneyê were fam kirin. Kaniya sêyemîn a vexwarina enerjiyê vekir. Û di dawiyê de ji min re xuya bû ku haşkirin tenê pelê, naveroka wê digire, lê NE MAFÊN GIRTINÊ! Yanî bi awayekî nepenî mafên me ji dest çûne, selinux seqet e, acl nayê bikar anîn û çîçek asê tune.

Min wêneya herêmî jê kir, di heman demê de wêneyê ji qeyda dokerê jî jê kir û dîsa pêxist. Û her tişt xebitî. Derket holê ku di dema veguheztinê de hem di hundurê wêneya herêmî hem jî di hundurê wêneya ku di qeydê de ye, maf winda bûne. Wekî ku min berê jî got, ji ber çend sedeman ew li ser heman otomobîlê bû. Û wekî encam, di yek pelrêça /var/lib/docker de.

Û pêşbîniya pirsa gelo wan hewl da ku awira dokerê vegerîne pelrêça kevn - na, wan hewl neda, mixabin, şert û merc destûr nedan. Erê, û min bi rastî dixwest ku ez wê fêm bikim.

Piştî nivîsandina vê gotarê, çareseriya pirsgirêkê ji min re eşkere xuya dike, lê di dema analîzê de wusa xuya nedikir. Bi rûmet, min Google kir û rewşên bi vî rengî nedît.

Encam: Min pirsgirêk çareser kir, ez hîn jî sedem fam nakim =(

Ger kesek dizane, texmîn dike, di derheqê sedemên mimkun ên vê pirsgirêkê de dîtinek hebe, ez ê pir kêfxweş bibim ku di şîroveyan de ji we bibihîzim!

Source: www.habr.com

Add a comment