Как да промените местоположението на Docker чорап файл?

Чудите се как да промените пътя на файла docker.sock?


Какво е Docker Socket?

Докер сокет файлът се намира на адрес /var/run/docker.sock

Използва се за комуникация с основния докер демон (процес) по подразбиране. Това е входната точка за Docker API. Този сокет се използва от Docker CLI по подразбиране за изпълнение на докер команди.

Позволете ми да ви покажа как да промените местоположението на файла на чорапа на docker.

Спрете Докер

Първо, ако услугата за докер работи на вашата система, спрете я. За да потвърдите, че е спрял, изпълнете командата за състояние.

[Имейл защитен]: ~ $ sudo service docker stop
[Имейл защитен]: ~ статус на докер услуга за $ sudo
● docker.service – Двигател за контейнерни приложения на Docker
Заредено: заредено (/lib/systemd/system/docker.service; активирано; настройка на доставчика: разрешено)
Активен: неактивен (мъртъв) от събота 2019-11-23 15:37:00 EST; Преди 4s
Документи: https://docs.docker.com
Процес: 1474 ExecStart = / usr / bin / dockerd -H fd: // –containerd = / run / containerd / containerd.sock (код = излязъл, статус = 0 / УСПЕХ)
Основен PID: 1474 (код = излязъл, статус = 0 / УСПЕХ)

10 ноември 01:56:49 geekflare dockerd [1474]: време ="2019-11-10T01: 56: 49-05: 00" ниво = грешка msg ="2019/11/10 06:56:49 Влизане в go-плъгини-помощник
10 ноември 01:56:49 geekflare dockerd [1474]: време ="2019-11-10T01: 56: 49-05: 00" ниво = грешка msg ="път = \"2019-11-10T06: 56: 49Z \" ниво = отстраняване на грешки msg =
10 ноември 01:56:49 geekflare dockerd [1474]: време ="2019-11-10T01: 56: 49-05: 00" ниво = грешка msg ="път = \"2019-11-10T06: 56: 49Z \" ниво = грешка msg =
10 ноември 01:57:23 geekflare dockerd [1474]: време ="2019-11-10T01: 57: 23.635519865-05: 00" ниво = информация msg ="Контейнер 3141793b98f315dc90a57d81006
10 ноември 01:57:24 geekflare dockerd [1474]: време ="2019-11-10T01: 57: 24.091797103-05: 00" ниво = информация msg ="игнориране на събитие" модул = libcontainerd
23 ноември 15:36:56 geekflare systemd [1]: Спиране на двигателя на контейнери за приложения на Docker…
23 ноември 15:36:56 geekflare dockerd [1474]: време ="2019-11-23T15: 36: 56.992795411-05: 00" ниво = информация msg ="Сигналът за обработка „прекратен“"
23 ноември 15:36:58 geekflare dockerd [1474]: време ="2019-11-23T15: 36: 58.234014533-05: 00" ниво = информация msg ="игнориране на събитие" модул = libcontainerd
23 ноември 15:37:00 geekflare dockerd [1474]: време ="2019-11-23T15: 37: 00.403572098-05: 00" ниво = информация msg ="игнориране на събитие" модул = libcontainerd
23 ноември 15:37:00 geekflare systemd [1]: Двигател на контейнерите за приложения със спиране на Docker.

Редактирайте docker.conf и docker.socket

Следното променям пътя от /var/run/docker.sock към /home/geekflare/docker.sock

  • Редактирайте файла docker.conf във / etc / init / директорията с новото местоположение. Просто трябва да редактирате един ред с пътя DOCKER_SOCKET.

[Имейл защитен]: ~ $ sudo gedit /etc/init/docker.conf

описание "Докер демон"

стартирайте (файлова система и мрежово устройство IFACE! = lo)
спиране на runlevel [! 2345]

ограничение nofile 524288 1048576

# Наличието на нулеви граници причинява проблеми с производителността поради счетоводни разходи
# в ядрото. Препоръчваме да използвате cgroups, за да направите счетоводно-локално счетоводство.
лимит nproc неограничен неограничен

Respawn

убий тайм-аут 20

скрипт преди стартиране
# вижте също https://github.com/tianon/cgroupfs-mount/blob/master/cgroupfs-mount
ако grep -v ‘^ #’ / и т.н. / fstab | grep -q cgroup \
|| [! -e / proc / cgroups] \
|| [! -d / sys / fs / cgroup]; тогава
изход 0
Fi
ако! точка на монтиране -q / sys / fs / cgroup; тогава
mount -t tmpfs -o uid = 0, gid = 0, режим = 0755 cgroup / sys / fs / cgroup
Fi
(
cd / sys / fs / cgroup
за sys в $ (awk ‘! / ^ # / {if ($ 4 == 1) print $ 1}’ / proc / cgroups); правя
mkdir -p $ sys
ако! точка на монтиране -q $ sys; тогава
ако! mount -n -t cgroup -o $ sys cgroup $ sys; тогава
rmdir $ sys || вярно
Fi
Fi
Свършен
)
край скрипт

писменост
# променете тези в / etc / default / $ UPSTART_JOB (/ и т.н. / по подразбиране / докер)
DOCKERD = / ЮЕсАр / хамбар / dockerd
DOCKER_OPTS =
ако [-f / etc / default / $ UPSTART_JOB]; тогава
. / И т.н. / по подразбиране / $ UPSTART_JOB
Fi
EXEC "$ DOCKERD" $ DOCKER_OPTS – rew-log
край скрипт

# Не излъчвайте "започна" събитие, докато docker.sock е готов.
# Вижте https://github.com/docker/docker/isissue/6647
скрипт след старта
DOCKER_OPTS =
DOCKER_SOCKET =
ако [-f / etc / default / $ UPSTART_JOB]; тогава
. / И т.н. / по подразбиране / $ UPSTART_JOB
Fi

ако! ФОРМАТ "%с" "$ DOCKER_OPTS" | grep -qE -e ‘-H | –host’; тогава
DOCKER_SOCKET = / Начало / geekflare / docker.sock
още
DOCKER_SOCKET = $ (ФОРМАТ "%с" "$ DOCKER_OPTS" | grep -oP -e ‘(-H | –host) \ W * unix: // \ K (\ S +)’ | сед 1q)
Fi

ако [-n "$ DOCKER_SOCKET" ]; тогава
докато ! [-е "$ DOCKER_SOCKET" ]; правя
initctl статус $ UPSTART_JOB | grep -qE "(Стоп | Respawn) /" && изход 1
ехо "В очакване на $ DOCKER_SOCKET"
сън 0,1
Свършен
ехо "$ DOCKER_SOCKET е готов"
Fi
край скрипт

  • Редактирайте файла docker.socket, намиращ се на / lib / systemd / system / с актуализираното местоположение на файла docker.sock.

[Имейл защитен]: ~ $ sudo gedit /lib/systemd/system/docker.socket

[Мерна единица]

Описание = Docker Socket за API

PartOf = docker.service

[Цокъл]

ListenStream = / Начало / geekflare / docker.sock

SocketMode = 0660

SocketUser = корен

SocketGroup = Docker

[Инсталирай]

WantedBy = sockets.target

Изпълнете командата по-долу, за да актуализирате промените (местоположение на файла с докер чорап).

[Имейл защитен]: ~ $ sudo systemctl презареждане на демон

Стартирайте Docker

Нека започнем услугата за докер и проверим състоянието дали е започнало. Ще видите в края на дневника на състоянието, отпечатан на терминала, ще даде обновения път на файла docker.sock.

[Имейл защитен]: ~ $ sudo service docker start
[Имейл защитен]: ~ статус на докер услуга за $ sudo

docker.service – Двигател за контейнерни приложения на Docker
Заредено: заредено (/lib/systemd/system/docker.service; активирано; настройка на доставчика: разрешено)
Активен: активен (работи) от събота 2019-11-23 15:39:36 EST; Преди 3s
Документи: https://docs.docker.com
Основен PID: 8840 (докер)
Задачи: 17
Памет: 47.6M
CGroup: /system.slice/docker.service
└─8840 / usr / bin / dockerd -H fd: // –containerd = / run / containerd / containerd.sock

23 ноември 15:39:35 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 35.091941184-05: 00" ниво = предупреждение msg ="Вашето ядро ​​не поддържа време на изпълнение на cgroup rt"
23 ноември 15:39:35 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 35.093149218-05: 00" ниво = информация msg ="Зареждане на контейнери: старт."
23 ноември 15:39:35 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 35.957842188-05: 00" ниво = информация msg ="Мостът по подразбиране (docker0) е назначен с IP адрес 172.17.0.0/16. демон
23 ноември 15:39:36 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 36.078753190-05: 00" ниво = информация msg ="Зареждане на контейнери: извършено."
23 ноември 15:39:36 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 36.664727326-05: 00" ниво = информация msg ="Докер демон" commit = 481bc77 graphdriver (s) = overlay2 версия = 18.09.6
23 ноември 15:39:36 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 36.817929464-05: 00" ниво = грешка msg ="клъстер излезе с грешка: грешка при зареждане на TLS сертификат в / var / lib / do
23 ноември 15:39:36 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 36.820439024-05: 00" ниво = грешка msg ="рой компонент не може да бъде стартиран" = грешка"грешка при зареждането на сертификата за TLS
23 ноември 15:39:36 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 36.820821712-05: 00" ниво = информация msg ="Daemon приключи инициализацията"
23 ноември 15:39:36 geekflare systemd [1]: Стартиран двигател на контейнери за приложения на Docker.
23 ноември 15:39:36 geekflare dockerd [8840]: време ="2019-11-23T15: 39: 36.883382952-05: 00" ниво = информация msg ="Слушайте API /home/geekflare/docker.sock"

Изпълнете командата ls по пътя на файла docker.sock, само за да потвърдите, че този файл е създаден, когато стартирате услугата docker..

[Имейл защитен]: ~ $ ls -l
общо 466832
-rw-r – r– 1 geekflare geekflare 0 23 октомври 05:32]
drwxr-xr-x 9 tomcat tomcat 4096 ноември 18 14:30 apache-tomcat-9.0.27
-rw-r – r– 1 geekflare geekflare 10982406 7 октомври 06:21 apache-tomcat-9.0.27.tar.gz
drwxr-xr-x 8 geekflare geekflare 4096 октомври 23 06:05 готвач-репо
-rw-r – r– 1 geekflare geekflare 252269838 1 юли 15:16 chef-server-core_13.0.17-1_amd64.deb
-rw-r – r– 1 geekflare geekflare 129713682 27 декември 2018 chef-workstation_0.2.43-1_amd64.deb
drwxr-xr-x 2 geekflare geekflare 4096 Oct 23 2018 Desktop
-rw-r – r– 1 geekflare geekflare 726 27 юли 15:10 Dockerfile
srw-rw —- 1 корен докер 0 ноември 23 15:39 docker.sock
drwxr-xr-x 2 geekflare geekflare 4096 окт 23 октомври 2018 г. Документи
drwxr-xr-x 2 geekflare geekflare 4096 юли 20 18:20 сваляния
-rw-r – r– 1 geekflare geekflare 8980 октомври 23 2018 example.desktop

Успешно актуализирате местоположението на докер файла с чорапи.

Ако търсите да научите Докер, но зает, проверете това крах курс.

ЕТИКЕТИ:

  • докер

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