Hoe kan ek die lokasie van die sokkielêer van Docker verander?

Vra jy jouself af hoe jy die lêerpad vir docker.sock kan verander?


Wat is Docker Socket?

Docker-socket lêer is geleë op /var/run/docker.sock

Dit word standaard gebruik om met die hoof-docker-daemon (proses) te kommunikeer. Dit is die ingangspunt vir ‘n Docker API. Hierdie aansluiting word standaard deur Docker CLI gebruik om dockeropdragte uit te voer.

Laat ek jou wys hoe om die ligging van die docker-sokkielêer te verander.

Stop Docker

Eerstens, as die doktersdiens op u stelsel werk, stop dit. Voer die statusbevel uit om te bevestig dat dit gestop is.

[Email protected]: ~ $ sudo diens docker stop
[Email protected]: ~ $ sudo diens docker status
● docker.service – Docker-toepassingshouermotor
Gelaai: gelaai (/lib/systemd/system/docker.service; geaktiveer; verskaffer vooraf ingesteld: ingeskakel)
Aktief: onaktief (dood) sedert Sat 2019-11-23 15:37:00 EST; 4s gelede
Dokumente: https://docs.docker.com
Proses: 1474 ExecStart = / usr / bin / dockerd -H fd: // –containerd = / run / containerd / containerd.sock (kode = verlaat, status = 0 / SUKSES)
Hoof-PID: 1474 (kode = verlaat, status = 0 / SUKSES)

10 Nov 01:56:49 geekflare dockerd [1474]: tyd ="2019-11-10T01: 56: 49-05: 00" vlak = fout"2019/11/10 06:56:49 Gaan inprop-helper in
10 Nov 01:56:49 geekflare dockerd [1474]: tyd ="2019-11-10T01: 56: 49-05: 00" vlak = fout"tyd = \"2019-11-10T06: 56: 49Z \" vlak = ontfout
10 Nov 01:56:49 geekflare dockerd [1474]: tyd ="2019-11-10T01: 56: 49-05: 00" vlak = fout"tyd = \"2019-11-10T06: 56: 49Z \" vlak = fout
10 Nov 01:57:23 geekflare dockerd [1474]: tyd ="2019-11-10T01: 57: 23,635519865-05: 00" vlak = info msg ="Houer 3141793b98f315dc90a57d81006
10 Nov 01:57:24 geekflare dockerd [1474]: tyd ="2019-11-10T01: 57: 24,091797103-05: 00" vlak = info msg ="ignoreer gebeurtenis" module = libcontainerd
23 Nov 15:36:56 geekflare systemd [1]: Stop Docker Application Container Engine…
23 Nov 15:36:56 geekflare dockerd [1474]: tyd ="2019-11-23T15: 36: 56,992795411-05: 00" vlak = info msg ="Verwerkingsein ‘beëindig’"
23 Nov 15:36:58 geekflare dockerd [1474]: tyd ="2019-11-23T15: 36: 58,234014533-05: 00" vlak = info msg ="ignoreer gebeurtenis" module = libcontainerd
23 Nov 15:37:00 geekflare dockerd [1474]: tyd ="2019-11-23T15: 37: 00.403572098-05: 00" vlak = info msg ="ignoreer gebeurtenis" module = libcontainerd
23 Nov 15:37:00 geekflare systemd [1]: Stop Docker Toepassing Container Engine.

Wysig docker.conf en docker.socket

Die volgende, ek verander die pad van /var/run/docker.sock na /home/geekflare/docker.sock

  • Bewerk die lêer docker.conf binne / etc / init / gids met die nuwe ligging. U hoef net een reël met die DOCKER_SOCKET-pad te wysig.

[Email protected]: ~ $ sudo gedit /etc/init/docker.conf

beskrywing "Docker-demon"

begin (lêerstelsel en netto-toestel-opstelling IFACE! = lo)
stop op baan [! 2345]

limiet nofile 524288 1048576

# As u nie-nul limiete het, kan dit probleme met die oog op rekeningkundige koste veroorsaak
# in die kern. Ons beveel aan dat u groepe gebruik om plaaslike boekhouers te hou.
beperk nproc onbeperk onbeperk

respawn

doodmaak-time-out 20

pre-start script
# sien ook https://github.com/tianon/cgroupfs-mount/blob/master/cgroupfs-mount
as grep -v ‘^ #’ / etc / fstab | grep -q groep \
|| [! -e / proc / groepe] \
|| [! -d / sys / fs / cgroup]; dan
uitgang 0
fi
as! mountpoint -q / sys / fs / cgroup; dan
monteer -t tmpfs -o uid = 0, gid = 0, modus = 0755 groep / sys / fs / cgroup
fi
(
cd / sys / fs / cgroup
vir sys in $ (awk ‘! / ^ # / {if ($ 4 == 1) druk $ 1}’ / proc / cgroups); doen
mkdir -p $ sys
as! mountpoint -q $ sys; dan
as! monteer -n -t groep -o $ sys groep groep $ sys; dan
rmdir $ sys || waar
fi
fi
gedaan
)
eindskrif

script
# verander hierdie in / etc / default / $ UPSTART_JOB (/ etc / default / docker)
DOCKERD = / usr / bin / dockerd
DOCKER_OPTS =
as [-f / etc / default / $ UPSTART_JOB]; dan
. / Etc / default / $ UPSTART_JOB
fi
exec "$ DOCKERD" $ DOCKER_OPTS – teken logs
eindskrif

# Moenie uitstoot nie "begin" gebeurtenis totdat docker.sock gereed is.
# Kyk https://github.com/docker/docker/issues/6647
na-begin skrip
DOCKER_OPTS =
DOCKER_SOCKET =
as [-f / etc / default / $ UPSTART_JOB]; dan
. / Etc / default / $ UPSTART_JOB
fi

as! printf "% s" "$ DOCKER_OPTS" | grep -qE -e ‘-H | –host’; dan
DOCKER_SOCKET = / huis / geekflare / docker.sock
anders
DOCKER_SOCKET = $ (printf "% s" "$ DOCKER_OPTS" | grep -oP -e ‘(-H | –host) \ W * unix: // \ K (\ S +)’ | sed 1q)
fi

as [-n "$ DOCKER_SOCKET" ]; dan
terwyl! [-e "$ DOCKER_SOCKET" ]; doen
initctl status $ UPSTART_JOB | grep -qE "(Stop | respawn) /" && uitgang 1
eggo "Wag vir $ DOCKER_SOCKET"
slaap 0.1
gedaan
eggo "$ DOCKER_SOCKET is beskikbaar"
fi
eindskrif

  • Bewerk die docker.socket-lêer op / lib / systemd / system / met die opgedateerde plek van die docker.sock-lêer.

[Email protected]: ~ $ sudo gedit /lib/systemd/system/docker.socket

[Eenheid]

Description = Docker Socket vir die API

PartOf = docker.service

[Socket]

ListenStream = / huis / geekflare / docker.sock

SocketMode = 0660

SocketUser = wortel

SocketGroup = Docker

[Installeer]

WantedBy = sockets.target

Voer die onderstaande opdrag uit om die veranderinge op te dateer (ligging van die doksok-lêer).

[Email protected]: ~ $ sudo systemctl daemon-herlaai

Begin Docker

Laat ons die docker-diens begin, en kyk of die status begin. U sal sien dat aan die einde van die statuslog wat op die terminale gedruk is, die opgedateerde pad van die docker.sock-lêer gegee word.

[Email protected]: ~ $ sudo diens docker begin
[Email protected]: ~ $ sudo diens docker status

docker.service – Docker-toepassingshouermotor
Gelaai: gelaai (/lib/systemd/system/docker.service; geaktiveer; verskaffer vooraf ingesteld: ingeskakel)
Aktief: aktief (hardloop) sedert Sat 2019-11-23 15:39:36 EST; 3s gelede
Dokumente: https://docs.docker.com
Hoof-PID: 8840 (dockerd)
Take: 17
Geheue: 47.6M
CGroup: /system.slice/docker.service
└─8840 / usr / bin / dockerd -H fd: // –containerd = / run / containerd / containerd.sock

23 Nov 15:39:35 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 35,091941184-05: 00" vlak = waarskuwing"U pitte ondersteun nie die groep se runtime nie"
23 Nov 15:39:35 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 35,093149218-05: 00" vlak = info msg ="Laai houers: begin."
23 Nov 15:39:35 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 35,957842188-05: 00" vlak = info msg ="Standaardbrug (docker0) word toegeken met ‘n IP-adres 172.17.0.0/16. daemon
23 Nov 15:39:36 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 36,078753190-05: 00" vlak = info msg ="Laai houers: klaar."
23 Nov 15:39:36 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 36,664727326-05: 00" vlak = info msg ="Docker-demon" commit = 481bc77 grafiese drywer (s) = overlay2 weergawe = 18.09.6
23 Nov 15:39:36 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 36,817929464-05: 00" vlak = fout"cluster verlaat met fout: fout tydens die laai van TLS-sertifikaat in / var / lib / do
23 Nov 15:39:36 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 36,820439024-05: 00" vlak = fout"swermkomponent kon nie begin word nie" fout ="fout tydens die laai van TLS-sertifikaat
23 Nov 15:39:36 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 36,820821712-05: 00" vlak = info msg ="Daemon is geïnitialiseer"
23 Nov 15:39:36 geekflare systemd [1]: Started Docker Application Container Engine.
23 Nov 15:39:36 geekflare dockerd [8840]: tyd ="2019-11-23T15: 39: 36,883382952-05: 00" vlak = info msg ="API luister /home/geekflare/docker.sock"

Voer die ls-opdrag uit op die pad van die docker.sock-lêer, net om te bevestig dat hierdie lêer geskep is toe u die docker-diens begin..

[Email protected]: ~ $ ls -l
totaal 466832
-rw-r – r– 1 geekflare geekflare 0 23 Oktober 05:32]
drwxr-xr-x 9 tomcat tomcat 4096 18 nov. 14:30 apache-tomcat-9.0.27
-rw-r – r– 1 geekflare geekflare 10982406 7 Okt 06:21 apache-tomcat-9.0.27.tar.gz
drwxr-xr-x 8 geekflare geekflare 4096 23 Oktober 23 06:05 sjef-repo
-rw-r – r– 1 geekflare geekflare 252269838 1 Jul 15:16 chef-server-core_13.0.17-1_amd64.deb
-rw-r – r– 1 geekflare geekflare 129713682 27 Desember 2018 sjef-werkstasie_0.2.43-1_amd64.deb
drwxr-xr-x 2 geekflare geekflare 4096 23 Oktober 2018 Desktop
-rw-r – r– 1 geekflare geekflare 726 27 Jul 27 15:10 Dockerfile
srw-rw —- 1 root docker 0 23 Nov 15:39 docker.sock
drwxr-xr-x 2 geekflare geekflare 4096 23 Oktober 2018 Dokumente
drwxr-xr-x 2 geekflare geekflare 4096 Jul 20 18:20 Downloads
-rw-r – r– 1 geekflare geekflare 8980 23 Okt 2018 voorbeelde.desktop

U het die ligging van die doktersokkie-lêer suksesvol opgedateer.

As u Docker wil leer, maar wel besig is, gaan kyk hierna crash kursus.

Tags:

  • Docker

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map