@docker_ru

Страница 1003 из 1375
Timur
25.01.2019
14:51:15
docker network create -d macvlan --subnet=192.168.255.192/27 --gateway=192.168.255.209 -o parent=ens192 my-macvlan-net

прибиваю к контейнеру

docker run --rm --net=my-macvlan-net --ip=192.168.255.216 --cap-add=SYS_ADMIN -d -e "container=docker" -v /sys/fs/cgroup:/sys/fs/cgroup centos7-bit-dev /usr/sbin/init

прибивается

Google
Timur
25.01.2019
14:52:17
[root@f6dac87059f8 /]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 9: eth0@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default link/ether 02:42:c0:a8:ff:d8 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 192.168.255.216/27 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::42:c0ff:fea8:ffd8/64 scope link valid_lft forever preferred_lft forever

если создать контейнер рядом то пингуют они друг друга

н оне хостмашина(там где сам докер) , не др хосты подсети не пингуют его

192.168.255.212 докер

216 контейнер

arp контейнера тоже не виден с 212

как бы должно работать, а нет, 2 дня уже гуглю

обобщу вопрос: как прибить ip к контейнеру, чтобы он был доступен из всей подсети?

ildar
25.01.2019
15:12:15
И снова я про всякие кэши, слои и вольюмы. В докере делаю `npm build`оказывается, оно не ребилдит нифига, даже если исходиники поменялись. Поэтому если до сборки в контейнере и вообще до запуска докера, удалить каталог ./build, то внезапно изменения появляются в билде. Первое, что я решил сделать, это прямо в докер файле перед шагом сборки делать удаление каталога ARG backend_url='= "http://127.0.0.1:8000/graphql";' WORKDIR /build ADD ./ /build RUN rm -rf build/build RUN pwd; ls -l /build/; ls -l ./src/utils/const/ RUN /bin/bash -c "sed -ie 's|=.*|$backend_url|g' ./src/utils/const/api.js" RUN npm install RUN npm run build Но это нифига не помогло, видимо удаление произошло только в каком-то слое или ещё какая-то магия случилась, но моих изменений в билде не оказалось. При этом если до запуска докера удалить этот каталог вручную, то всё нормально. В связи с этим вопрос, как правильно чистить этот кэш сборки при запуске контейнера? Не хочется для этого ещё какой-то внешний баш-скрипт прикостыливать.
Смешались в кучу конелюди. Какую команду вызвываете? Какие изменения вносите?

И снова я про всякие кэши, слои и вольюмы. В докере делаю `npm build`оказывается, оно не ребилдит нифига, даже если исходиники поменялись. Поэтому если до сборки в контейнере и вообще до запуска докера, удалить каталог ./build, то внезапно изменения появляются в билде. Первое, что я решил сделать, это прямо в докер файле перед шагом сборки делать удаление каталога ARG backend_url='= "http://127.0.0.1:8000/graphql";' WORKDIR /build ADD ./ /build RUN rm -rf build/build RUN pwd; ls -l /build/; ls -l ./src/utils/const/ RUN /bin/bash -c "sed -ie 's|=.*|$backend_url|g' ./src/utils/const/api.js" RUN npm install RUN npm run build Но это нифига не помогло, видимо удаление произошло только в каком-то слое или ещё какая-то магия случилась, но моих изменений в билде не оказалось. При этом если до запуска докера удалить этот каталог вручную, то всё нормально. В связи с этим вопрос, как правильно чистить этот кэш сборки при запуске контейнера? Не хочется для этого ещё какой-то внешний баш-скрипт прикостыливать.
Кэш может инвалидироваться на первом или третьем шаге этого Dockerfile при соответствующих действиях. Или можно вообще без кэша попросить.

@itjnk https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#leverage-build-cache

[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
15:32:03
Смешались в кучу конелюди. Какую команду вызвываете? Какие изменения вносите?
Мне надо в конфиге подменить урл до бэкенда а потом билдить фронт. Но он не подменяется, буд-то бы где-то закэширован. Поэтому вне докера я удаляю каталог build и сед внутри докера отлично всё подменяет и в результате билда я вижу правильный адрес бэкенда в запросах фронта. Но это всё я делаю вне докеров и докерфайлов. Если же пытаюсь удалять каталог билд в процессе выполнения докерфайла, то после сборки фронт ходит на старый адрес бэка, будто бы мой сед отработал где-то на другом слое, либо билд не пересобирал этот файл.

Допускаю, что кэширует не докер, а сам нпм

Google
[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
15:35:06
Но самое простое решение по удалению каталога с кэшем почему-то не срабатывает в том варианте, который я написал выше.

Dmitry
25.01.2019
15:38:18
sudo docker-compose build не работал?

[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
15:38:20
@itjnk https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#leverage-build-cache
Хммммммм, а вот это может быть причиной Aside from the ADD and COPY commands, cache checking does not look at the files in the container to determine a cache match. For example, when processing a RUN apt-get -y update command the files updated in the container are not examined to determine if a cache hit exists. In that case just the command string itself is used to find a match.

sudo docker-compose build не работал?
Зачем мне судо и композ? Мне надо готовый имидж засунуть в регистри

Dmitry
25.01.2019
15:40:00
так образ откатывается после выхода из него, насколько я знаю. Если хочешь поулучить новое состояние - нужно ребилдить

докер ищет слои, в которых произошли изменения и начинает ребилдить с этого слоя

[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
15:40:55
так образ откатывается после выхода из него, насколько я знаю. Если хочешь поулучить новое состояние - нужно ребилдить
Спасибо кэп, о том и речь, что я делаю ребилд а изменений никаких не происходит...

Dmitry
25.01.2019
15:41:13
а кэш удалял?

prune

[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
15:41:52
Так с этим вопросом я и пришёл. Но мне не хочится чистить весь кэш докера. Я хочу удалить лишь кэш от npm

Dmitry
25.01.2019
15:44:18
запусти всё, что тебе нужно, и удали через prune всё, что не нужно (не запущено) :)

[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
15:58:27
Внеси изменения на нужном шаге или перед ним.
И что, при каждом коммите и запуске CI добавлять мусорные команды?

запусти всё, что тебе нужно, и удали через prune всё, что не нужно (не запущено) :)
Вообще херовый вариант, потому что на одной билд машине может не быть всех остальных и это всё просто не запустить вместе.

ilshat
25.01.2019
16:03:29
ребята не подскажите чем отличается директива expose от ports ?

ildar
25.01.2019
16:08:56
И что, при каждом коммите и запуске CI добавлять мусорные команды?
Неа, надо 1) разобраться с тем как работает кэш и как его инвалидировать и 2) четко сформулировать, чего вы хотите добиться.

Petrovich
25.01.2019
16:11:24
ребята не подскажите чем отличается директива expose от ports ?
Одна маппит порт хост машины а другая выкидывает во внутреннюю сетку порт

[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
16:13:32
Неа, надо 1) разобраться с тем как работает кэш и как его инвалидировать и 2) четко сформулировать, чего вы хотите добиться.
Да вроде два раза достаточно чётко сормулировал, что изменения в файлах не попадают в образ контейнера.

Google
[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
16:14:09
Ладно, я пока остановился на решении docker build --no-cache=true

Но всёравно благодарю за помощь.

ildar
25.01.2019
16:15:49
Но всёравно благодарю за помощь.
Пожалуйста. на досуге почитайте https://github.com/moby/moby/issues/1996

[̲̅i̲̅t̲̅j̲̅u̲̅n̲̅k̲̅y̲̅] ࢧ кибер-даос
25.01.2019
16:17:55
Antonio
25.01.2019
16:52:24
ребята подскажите куда копать есть data.sql (генерируеться) файл внутри контернера №1 теперь этот файл я хочу импортировать внетрь контейнера №2 (mysql ) —делаю докер компоузом —

прочитал что его надо подложить в /docker-entrypoint-initdb.d/

чтоб при старте мускул импортировал его

но как это забрат с первого контернера не понимаю

Sergey
25.01.2019
17:03:26
Либо делать скрипт на докер_хосте через docker cp

Но я бы посоветовал маунт, тем более в композе описать можно

Antonio
25.01.2019
17:52:47
спс читаю

Григорий
26.01.2019
06:23:46
Нихао всем=)

Ребят подскажите как контейнер вывести на внешнюю локальную сеть, тоесть чтоб контейнер получил ip от моего dhcp

Nikita
26.01.2019
06:33:15
Всем привет. Какой есть кастомный софт для хостинга своего регистри кроме гитлаба и портуса? Из фич больше всего интересует разграничение доступа к имаджам для разных юзеров

Григорий
26.01.2019
06:33:24
Спасибо пайду раскуривать=)

я магу ошибаться

0x7f
26.01.2019
07:27:31
Latest commit 38fe15a 'update patch Kubernetes,Microservices' @ https://github.com/g0x7f/devOps-patch

Google
Timur
26.01.2019
08:24:49
https://docs.docker.com/network/host/
присоединяюсь к вопросу

сдеал по мануалу - не работает

sudo docker network create -d macvlan --subnet=192.168.15.0/24 --gateway=192.168.15.1 -o macvlan_mode=bridge -o parent=wlp2s0 my-macvlan-net

sudo docker network inspect my-macvlan-net [ { "Name": "my-macvlan-net", "Id": "3cdf9c7069c46d53d3ae27eaad541852051d951bd3d875f7bab29526bb298d33", "Created": "2019-01-26T09:25:38.059798031+03:00", "Scope": "local", "Driver": "macvlan", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": {}, "Config": [ { "Subnet": "192.168.15.0/24", "Gateway": "192.168.15.1" } ] }, "Internal": false, "Attachable": false, "Containers": { "004468a9ee6282572eb6f2d0712b6d01769f337c4af0a621d3138fe57a73576b": { "Name": "gracious_jennings", "EndpointID": "a25b6d648ebb5077b98ce2ce697359556127c7f58ff8c87940d15525d26a6a46", "MacAddress": "02:42:c0:a8:0f:2d", "IPv4Address": "192.168.15.45/24", "IPv6Address": "" } }, "Options": { "parent": "wlp2s0" }, "Labels": {} } ]

sudo docker run --net=my-macvlan-net --ip=192.168.15.45 -itd alpine /bin/sh

и вот не пингуется сам хост с этого контейнера, ip хоста 15.103, да и шдюз с контейнера не пингуется 15.1

но контейнеры пингуют друг друга, если 2 создать

"NetworkSettings": { "Bridge": "", "SandboxID": "030c0dfa622fd8bee90ad3f275d93146e44388c6cdc6e7306d4f16964b620324", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": {}, "SandboxKey": "/var/run/docker/netns/030c0dfa622f", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, "EndpointID": "", "Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "MacAddress": "", "Networks": { "my-macvlan-net": { "IPAMConfig": { "IPv4Address": "192.168.15.45" }, "Links": null, "Aliases": [ "004468a9ee62" ], "NetworkID": "3cdf9c7069c46d53d3ae27eaad541852051d951bd3d875f7bab29526bb298d33", "EndpointID": "a25b6d648ebb5077b98ce2ce697359556127c7f58ff8c87940d15525d26a6a46", "Gateway": "192.168.15.1", "IPAddress": "192.168.15.45", "IPPrefixLen": 24, "IPv6Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "MacAddress": "02:42:c0:a8:0f:2d"

сетевые праметры контейнра

Den
26.01.2019
12:03:39
ПРивет всем, кто нибудь сталкивался с проблемой отсуствия файла libhostpolicy.so в контенере .net core приложения?

inqfen
26.01.2019
12:09:07
А версия. Net core какая?

Set
26.01.2019
12:56:49
Привет. Есть ссылка на настройки для django, postgree на боевом сервере ?

Ни разу ещё не работал на нем но все советуют использовать докер

С офицалке базовые ... Хотелось бы по подробней

Не углубляясь в него

Никитяо
26.01.2019
13:00:16
на сайте джанго есть нормальный гайд

inqfen
26.01.2019
13:10:45
Тогда выкини эту идею

С офицалке базовые ... Хотелось бы по подробней

Не углубляясь в него

Google
inqfen
26.01.2019
13:10:58
Либо углубляйся, либо не юзай

Timur
26.01.2019
14:14:08
Включи HairpinMode
Спасибо. Попробую

Bad
26.01.2019
16:24:23
Добрый вечер) Подскажите плиз! Как в docker service можно ограничить использование памяти на жестком диске?

Страница 1003 из 1375