Roman
не ну если я хочу например, чтоб во всех проектах папка .git не попадала в контекст
George
у git и docker build принципиально разный принцип действия
Zhanat
Всем привет, есть сервис на Java при локальном запуске все отлично, но в докере постоянно Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "pool-1-thread-3"
Sebor▂▅▇█▓▒░
Всем привет, есть сервис на Java при локальном запуске все отлично, но в докере постоянно Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "pool-1-thread-3"
Ну он же прямо пишет, что памяти не хватает Смотри на параметры, с которыми запускается контейнер
Zhanat
Памяти на сварме хватает за глаза, ограничение в самой Java 4 Gb, но сервис не доходят до порога отваливается с этой ошибкой
Sebor▂▅▇█▓▒░
Ну здесь либо лимиты кривые, либо хип маленький, либо на ноде памяти нет, либо нагружаете приложуху сильно. Чудес не бывает
Sebor▂▅▇█▓▒░
А, ещё само приложение кривое забыл упомянуть
Zhanat
Вот по ключам Java можете подсказать?
Zhanat
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Dspring.profiles.active=prod","-jar","./***aa.jar"]
Andrey
-Xmx
Zhanat
Разраб говорит, что выставил в Java option
Zhanat
Получается в entry point все таки нужно прописать переменную?
Sebor▂▅▇█▓▒░
Разраб говорит, что выставил в Java option
А где эти опции он выставляет? В профайле prod?
Zhanat
Спросил у него, пишет что по-умолчанию у java 4 gb ограничение.
Zhanat
Завтра попробуем выставить
Zhanat
-Xmx
Zhanat
Локально отлично все, в контейнере валится
Dan
Простой сервис для сложных задач. Автоматизация DevOps/Ops задач с помощью web-интерфейса. Отличное решение для управления инфраструктурой проекта - DevOps as a Service от D2C.io Некоторые функции, которые сэкономят вам уйму времени: - управление группой серверов разных провайдеров (AWS, DO, GCP, Vultr, UpCloud) и своего железа (Ubuntu/Debian) в одном месте - разворачивание сервисов приложений, баз данных, веб-серверов, балансировщика нагрузки - масштабирование приложений и баз данных (MasterSlave и ReplicaSet) - выполнение бэкапов по расписанию (6 провайдеров + SFTP) - автоматическое создание конфигов для NGINX и HAProxy - поддержка автообновляемых Let's Ecnrypt сертификатов - онлайн просмотр метрик и логов серверов и контейнеров - большой список готовых стэков приложений в StackHub - управление ролями и правами доступа к проектам/сервисам/серверам - поддержка на русском языке Участникам нашего сообщества — скидка 20% на первую оплату любого тарифа. Промокод - ru_docker20 Подробнее Документация StackHub
Daniyar
Привет всем. Я в сетях пока что не очень шарю. Какой айпи адрес локальной линукс машины добавить добавить чтобы сделать его менеджер нод в докер swarm? Где его посмотреть?
Mrtko
Друзья привет!! Я столкнулся с ошибкой no space left on device. Поудалял вольюмы, контейнеры и образы. Теперь вывод команды docker system df показывает всё по нулям: я всё удалил. Но что-то продолжает занимать место: df -a -h /var/lib/docker/ Размер: 28 Гб Использовано: 24 Гб Доступно: 2 Гб Использовано: 90% А мне надо запуллить образ 5 Гб. А места нет. Я почитал об этом тут и там: в таких случаях люди долго и мучительно ищут, где же кроется мусор. И тут я подумал, а почему бы просто не снести Докер, а потом установить его заново? Почему-то так никто не делает. Есть какие-то подводные камни у такого подхода? Что будет, если я удалю Докер целиком?
Vitaly
du -sh /var/lib/docker/
Vitaly
Как вариант
Vitaly
но да очень часто лог контейнера забивает
Mrtko
Mrtko
Сейчас попробую с помощью ncdu посмотреть
Vitaly
не удаляли случакм файоы открытые?
Mrtko
не удаляли случакм файоы открытые?
Я теперь не смогу сказать.
Alexander
Artyom
Да, reclaimed space: 0
Есть остановленные контейнеры? (Хотя это вряд ли, ибо прун уже сделан)
Alexander
lsof 2>/dev/null | grep deleted
Если есть открытые удаленные файлы, эта команда их покажет. По опыту это самое вероятное из-за чего может «пропасть» место.
Mrtko
Что будет, если я удалю Докер целиком? ничего, файлы в /var/ останутся
А если и var/lib/docker удалить? Я нашёл вот такой набор команд: sudo apt-get purge -y docker.io sudo apt-get autoremove -y --purge docker.io sudo apt-get autoclean sudo rm -rf /var/lib/docker sudo rm -rf /etc/docker sudo rm /etc/apparmor.d/docker sudo apt-get purge runc containerd docker.io
Andrew
попробуй docker builder prune, если билдил контейнеры на этой машине
Andrew
А что говорит du -hs /var/lib/docker?
Andrew
2.5 Mb
Вижу ответ
Andrew
У Вас место забито не докером, а просто забит /var или вообще / (Зависит от того, как Вы монтируете)
Andrew
можно попробовать анализировать через du -h --max-dept 1 /var
Andrew
и потом погружаясь постепенно внутрь самых "объемных" каталогов
Andrew
Напомню, хотя думаю это Вам известно, что df показывает утилизацию по файловым системам, а не по каталогам....
Mark
ncdu показывает, что занято суммарно 2.5 Мб
вы же запускали ее из корня?
Mrtko
вы же запускали ее из корня?
Из /var/lib/docker. А из корня надо было, да? 😆
Mark
Из /var/lib/docker. А из корня надо было, да? 😆
ну вам же нужно понять что занимает место) если мы пытаемся найти большие файлы на системе, то лучше искать начиная с корня
Mrtko
можно попробовать анализировать через du -h --max-dept 1 /var
Почти все папки занимают сущие килобайты. Тяжеловесными оказались: - /var/tmp ~ 1Gb - /var/cache ~ 1Gb - /var/crash ~ 250 Mb - /var/log ~ 2 Gb Судя по названиям папок, ничего существенного там нет. Вы смогли бы сходу сказать, что из этого можно безопасно удалить?
Andrew
а у Вас /var как отдельная ФС примонтирована? или только рутовая монтируется?
Aziz
Ребят доброго времени суток. Подскажите решение. В общем я запустил контейнера через композник. Сервис и его бд. Без выноса волумов, просто баловался. НО так вышло что они стали прод сервисами и мне их тушить нельзя. И находятся они на шаткой машине, нужно мне это все перенести в другую машину. Вариант слить дам не канает так как прила не принимает их. Могу ли я просто создать образы этих контейнеров на основе docker save?
Алексей
можешь просто распаковать контейнер и взять файло руками, и сделать новый композник с волумами и шлю..зами
Алексей
а. тушить нелзья. а как ты вообще собрался это делать не тушив?
Алексей
или всё-таки можно
Mrtko
а у Вас /var как отдельная ФС примонтирована? или только рутовая монтируется?
Если я правильно понимаю, команда df -a -h показывает список файловых систем. Среди них нет /var
Mrtko
Саммари по моей проблеме: При попытке втянуть Докер-образ я получал ошибку no space left on device. В прошлом в таких случаях мне помогало удаление Докер-объектов. Команда: docker system prune. Но в этот раз не сработало. Команда docker system df показывала, что у меня нет никаких Докер-объектов (я их уже все удалил). Но при попытке втянуть образ, я опять получал ошибку no space left on device. Значит место занимает не Докер, а что-то другое. Что для моего случая сработало: 1. Проверить, где живёт Докер и сколько места ему доступно. Команда: df -a -h /var/lib/docker В итоге узнал, что мой Докер живёт в файловой системе sda5, которая смонтирована в корне моей системы. - Полный размер файловой системы: 28 Гб. - Свободно: 3 Гб. - Использовано: 24 Гб (90%). 2. Проверить, какие папки в файловой системе sda5 занимают много места. Программа ncdu, команда: ncdu -x / -x --- говорит смотреть только в одной файловой системе. / --- говорит, где эта файловая система смонтирована. В итоге узнал, что в файловой системе sda5 лежат четыре тяжёлые папки: - /var: 12 Gb, - /usr: 9 Gb, - /opt: 1 Gb, - / lib: 1 Gb. Плюс мелочь, что в сумме и занимает эти 24 Гб. До чего я сам вряд ли бы догадался: - что место забито не Докером, а чем-то другим; - что df показывает утилизацию по файловым системам, а не по каталогам; - установить ncdu; - запускать ncdu из корня; - пройтись по каталогам внутри файловой системы, постепенно погружаясь внутрь самых объёмных каталогов. Теперь осталось пройтись по этим объёмным папкам и удалить лишнее. Большое спасибо друзья!! ❤️
Ioann
Друзья, подскажите. Ситуация такая. В одном докер композе лежат 3 контейнера: 1. front - там развернута nuxt noda 2. back - там пыха с ларавелем 3. nginx. Суть в чём, нода не может подключиться по домейну сервера, чтобы прицепиться к апи пыхи, зато она цеаляется к апи через название контейнера нджинкса. Тобишь она цепляется по http://nginx/api/v1/, а по http://stage-server.ru/api/v1 она отдаёт 504
Ioann
если надо конфиг nginx или docker-compose - могу скинуть
George
Выгружай на пастебин, посмотрим
M
ARG GOLANG_VERSION FROM golang:$GOLANG_VERSION AS builder WORKDIR /go/src/github.com/NVIDIA/gpu-monitoring-tools COPY . . RUN make binary check-format FROM nvidia/cuda:11.0-base-ubuntu20.04 LABEL io.k8s.display-name="NVIDIA DCGM Exporter
M
Всем привет!Пытаюс собрать образ из докерфайла а он такое выдает! Не могу понять в чем дело
M
MKDIR?
M
COPY?
M
FROM golang:$GOLANG_VERSION AS builder ?
M
здесь надо указать версию голанга?
M
ок
M
Спасибо
Kana
Также вроде конфиг бэка надо расположить ниже конфига фронта
Kana
Попробовал - он не проксирует и выводит просто индекс страницу ларавеля
Точно, он же тока проверяет на файлы, а у тя фронт не ток для файлов же
Kana
Попробовал - он не проксирует и выводит просто индекс страницу ларавеля
Кстати ты же можешь приписать /api/ в локейшн чтобы он в ларавел стучал
Kana
location /api/ { # on the backend side, the request URI will _NOT_ contain the /api prefix, # which is what we want for a pure-api project proxy_pass http://backend:8080/; proxy_set_header Host localhost; }