Алексей
13.04.2019
20:19:48
Docker Root Dir: /var/lib/docker
Nikolay
13.04.2019
20:19:53
Еслиб некорректно, то не поднялся демон
Алексей
13.04.2019
20:19:54
у меня на маке так
так а в чем ошибка тогда?
Google
Алексей
13.04.2019
20:20:19
я менял рут дир на 20 тачках, везде без проблем прошло
Nikolay
13.04.2019
20:20:32
В том что контент не перенесся
Алексей
13.04.2019
20:20:44
контейнеров нет?
имеджей?
Nikolay
13.04.2019
20:20:55
ничего нет)
Алексей
13.04.2019
20:21:29
ну значит демон не видит директории
или прав нет или путь неверный
Nikolay
13.04.2019
20:33:21
путь верный, еслиб неверный был путь, то докер не поднялся бы, запускается от рута все. Любопытно, что когда я вернул старый путь, докер тупо отваливался после старта, спасла только переустановка
последний стоит Docker version 18.09.5, build e8ff056
Алексей
13.04.2019
20:40:42
Let's get started by modifying systemd's docker start up script. Open file /lib/systemd/system/docker.service with your favorite text editor and replace the following line where /new/path/docker is a location of your new chosen docker directory:
FROM:
ExecStart=/usr/bin/docker daemon -H fd://
TO:
ExecStart=/usr/bin/docker daemon -g /new/path/docker -H fd://
When ready stop docker service:
systemctl stop docker
It is important here that you have completely stopped docker daemon. The following linux command will yield no output only if docker service is stopped:
ps aux | grep -i docker | grep -v grep
If no output has been produced by the above command, reload systemd daemon:
systemctl daemon-reload
Once this is done create a new directory you specified above and optionally rsync current docker data to a new directory:
mkdir /new/path/docker
rsync -aqxP /var/lib/docker/ /new/path/docker
At this stage we can safely start docker daemon:
systemctl start docker
Confirm that docker runs within a new data directory:
root 2095 0.2 0.4 664472 36176 ? Ssl 18:14 0:00 /usr/bin/docker daemon -g /new/path/docker -H fd://
root 2100 0.0 0.1 360300 10444 ? Ssl 18:14 0:00 docker-containerd -l /var/run/docker/libcontainerd/docker-containerd.sock --runtime docker-runc```
All done.
делал так
на центосене
Nikolay
13.04.2019
20:44:40
Да я тоже этот метод находил, решил через daemon.json, т.к. так вроде бы правильнее. У меня убунта 16
Google
Nikolay
13.04.2019
20:52:22
Кажется понял в чем дело. Видимо из-за того, что я трогал именно daemon.json, другие значения кроме data-root стали дефолтными. Сторейдж драйвер изменился с древнего aufs на новый overlay2, поэтому скорее всего и не видно перенсенных данных
Да, проблема была в неверном сторейдж драйвере
Konstantin
13.04.2019
21:47:35
Nikolay
13.04.2019
21:51:46
Ага, я уже подумывал над этим тоже
Konstantin
13.04.2019
21:54:50
а кто тут сейчас админ?
@atassis @vizdrag
Алексей
13.04.2019
21:57:53
Sergey
14.04.2019
05:30:59
Roman
14.04.2019
09:24:04
Вопрос: hub.docker.com распространяет образы по одному. Но например, для такого комплексного проекта как GitLab, очевидно, нужно много разных образов. Фактически, нужен docker-compose.yml + набор dockerfile для: GO, db, nginx, crontab, etc....
Но вместо этого они создали один мультипроцессный контейнер в котором запускаются сразу все эти процессы, что противоречит философии докера: один процесс на контейнер. Или даже контейнер=процесс.
Есть ли у этой проблемы какое-то решение? Может быть есть какой-нибудь composer-hub.docker.com или что-то такое?
Такая комплексность, очевидно, нужна всем конечным продуктам, чтобы не хакать докер нарушая базовые принципы.
Konstantin
14.04.2019
09:26:30
что-то ты не туда завернул
George
14.04.2019
09:32:56
Вопрос: hub.docker.com распространяет образы по одному. Но например, для такого комплексного проекта как GitLab, очевидно, нужно много разных образов. Фактически, нужен docker-compose.yml + набор dockerfile для: GO, db, nginx, crontab, etc....
Но вместо этого они создали один мультипроцессный контейнер в котором запускаются сразу все эти процессы, что противоречит философии докера: один процесс на контейнер. Или даже контейнер=процесс.
Есть ли у этой проблемы какое-то решение? Может быть есть какой-нибудь composer-hub.docker.com или что-то такое?
Это все фигня. То что нужно - это Хелм чарты (фу-фу-фу,но лучше нет ) для деплоя в кубернетес
Докер - это переходный этап к к8с. Компоуз не нужен.
Использование докера на конечных серверах - ну, такое себе решение. При прочих равных всегда проще нарезать столько же виртуальных машин. Каждая - под отдельную задачу
Roman
14.04.2019
09:34:12
Gitlab - конкурент Github
Не исключено что не туда. Тем не менее, это из официальной документации. У них несколько сборок (коммерческая, коммьюнити, ...) и все они основаны на Omnibus GitLab:
Omnibus is a way to package different services and tools required to run GitLab, so that most users can install it without laborious configuration
Про Хелм чарты ещё не изучал, не знаю что это такое.
буду смотреть
George
14.04.2019
09:36:09
Google
Roman
14.04.2019
09:36:14
вот что у них написано:
The GitLab Docker images are monolithic images of GitLab running all the necessary services on a single container.
George
14.04.2019
09:36:19
Но это не продакшн-продакшн
Roman
14.04.2019
09:36:43
понял куда смотреть. Спасибо!
Oleksandr
14.04.2019
10:29:02
https://ponderosa.io/blog/docker/2019/04/13/secrets-in-docker-builds/
Санжар
14.04.2019
14:24:10
?
Ramziddin
14.04.2019
14:24:36
Sergei
14.04.2019
14:45:14
Добрый вечер, подскажите пожалуйста, как правильно провайдить node_modules из dev-контейнера на хост (для ide)?
Konstantin
14.04.2019
16:20:22
Sergei
14.04.2019
16:20:55
Konstantin
14.04.2019
16:20:58
Нету как правильно,. Локально делай как тебе удобно
Sergei
14.04.2019
16:21:53
только не гугли за меня!
Маунти папку
блин кажеться я ляпнул что то не то. Извините пожалуйста если так это получилось. в этой конфе вы не раз мне помогали, за что вам большое спасибо. по вопросу я гуглил конечно, но подходящего для себя решения не смог найти. как правило все упирается в тот факт что ангуляр хранит node_modules в корне проекта, и выдернуть его оттуда нелегко. получается что при монтировании исходников затирается node_modules, а при билде я так понимаю ничего смонтировать нельзя. кароче я просто откажусь пока от автоподстановки для своего vim, или правда буду пускать фронт отдельно (надо только научиться делать проксипасс на локальный девсервер из докер-нгинкса
Konstantin
14.04.2019
16:47:44
Igor
14.04.2019
16:48:05
Всем привет, подскажите когда docker-compose запускаем - он имена resolve внутри себя, или смотрит на моей машине?
Пример:
1) Контейнер nginx
2) Контейнер serve
Изнутри контейнера nginx - ping serve конечно проходит, но при попытке зайти proxy_pass говорит
#/2019/04/14 16:41:05 [error] 11#11: send() failed (111: Connection refused) while resolving, resolver: 127.0.0.1:53
Вот 127.0.0.1:53 - это хостовая машина ввиду имеется или тот что внутри?
Konstantin
14.04.2019
16:48:51
Используй дня имя сервиса
Google
Igor
14.04.2019
16:49:23
Konstantin
14.04.2019
16:49:41
А сеть у них общая?
Igor
14.04.2019
16:50:58
Konstantin
14.04.2019
16:51:14
Igor
14.04.2019
16:51:14
Конфиг кидай
Вырезка
nginx:
container_name: nginx
image: my-registry/nginx:stable
volumes:
- nginx_logs:/var/log/nginx:rw
ports:
- "80:80"
- "443:443"
networks:
- appnet
healthcheck:
test: ["CMD", "curl","-X","GET","http://localhost/healthcheck"]
centrifugo:
container_name: centrifugo
image: centrifugo/centrifugo:1.8.0
volumes:
- centrifugo:/centrifugo:rw
networks:
- appnet
healthcheck:
test: ["CMD","centrifugo","version"]
Konstantin
14.04.2019
16:52:07
А вообще странный резолвер, разве он доступен на локалхлст?
Igor
14.04.2019
16:52:26
это что бы контейнер с nginx не падал, когда другие лежат)
и подхватывал их, когда оживают
т.к. фича с resolver в nginx платная(((
/etc/nginx # nslookup centrifugo
nslookup: can't resolve '(null)': Name does not resolve
Name: centrifugo
Address 1: 172.27.0.4 centrifugo.docker_appnet
/etc/nginx #
nginx про него знает)
Konstantin
14.04.2019
16:54:46
Igor
14.04.2019
16:55:45
ну по идеи сам докер должен был разобраться, куда он пихает эти данные)
Да, всё верно сделал. Вот только торможу, днс сервер вроде не на локалхост
/var/log/nginx # curl -XGET centrifugo:8000
<!DOCTYPE html>
<html lang="en">
<head>
<title>Centrifugo</title>
<meta charset=utf-8>
<meta name=description content="Web interface for Centrifugal server">
<link rel="shortcut icon" href="public/images/favicon.ico" type="image/x-icon">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" type="text/css" href="public/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="public/bundle/bundle.css?v=1">
<script type="text/javascript" src="public/bundle/bundle.js?v=1"></script>
</head>
<body>
<div id="app"></div>
</body>
</html>
/var/log/nginx #
c nginx (докера) даже curl проходит)
Konstantin
14.04.2019
16:59:07
И скорее там локалхост и указан
Igor
14.04.2019
17:01:27
Google
Konstantin
14.04.2019
17:01:55
Igor
14.04.2019
17:02:03
Konstantin
14.04.2019
17:02:40
Igor
14.04.2019
17:03:38
Ip глянь, блин
;) эт я уже нашел, $server_addr как резолвер сейчас пробую)
Oleh
14.04.2019
17:05:15
привет