Андрей
Привет от команды K2 Cloud!
4-го марта проводим конференцию K2 Cloud Conf)
Поговорим о подходах, что есть уже сейчас и что только набирают популярность, а также заглянем в будущее и порассуждаем о роли облаков для российского рынка.
Приходи на конференцию или подключайся онлайн – мы всё предусмотрели.
Внутри: нетворкинг, много экспертизы и интересные доклады:
– Облако как конструктор: собираем инфраструктуру из готовых компонентов.
– PaaS — таблетка от рутины: как и почему это работает.
– Сетевые нереплицируемые диски в облаке как новое явление.
– Инвентаризация и автоматизация с помощью Netbox.
– Достать до облаков: 6 способов безопасно подключиться к своей инфраструктуре в К2 Облаке.
– Приоритеты компаний в области ИТ-проектов на ближайшие 3 года.
Участие бесплатное. Регистрация обязательна.
Успевайте регистрироваться!
(Пост согласован)
Kenya-West
Всем привет! Настроил бекап через restic. Всё работает, снапшоты льются cum'ом, всё как я люблю.
Я решил, что негоже держать данные сервисов Docker в абстрактных volume'ах, потому что:
- Они не попадают под процедуру бекапа с правами юзера;
- А даже если и попадают, то восстанавливать, заменяя содержимое абстрактного volume'а - это как-то стрёмно;
- Volume'ы в случае бекапа забираются все, даже ненужные, и на размер снапшота влияют некисло.
Вывод: я решил отказаться от абстрактных volume'ов и стал хранить данные сервисов прямо тут же, в той же директории, где $PWD, чтобы попадало в бекап только то, что есть в рабочей папке. В чём я не прав?
Artem
делаю docker compose build, но получаю
=> ERROR [php-app 2/5] RUN apt-get update && apt-get install -y iputils-ping && docker-php 7.4s
...
7.357 W: Failed to fetch http://deb.debian.org/debian/dists/bookworm/InRelease Temporary failure resolving 'deb.debian.org'
как будто не может к урлу обратиться. Куда думать подскажите.
если убрать дополнительные extension из докерфайла, и потом их вручную из поднятого докера устанавливать, то установка проходит без ошибок внутри контейнера
√Григорий
а можно как-то посмотреть сумму процентов из docker stats? то есть сколько суммарно все контейнеры потребляют ресурсов?
Artem
FROM php:8.4.3-fpm-bookworm
RUN apt-get update && apt-get install -y \
apt-utils \
libpq-dev \
libpng-dev \
делаю docker compose build и получаю
7.359 Temporary failure resolving 'deb.debian.org'
без установки утилит билдится нормально. После через консоль внутри докера можно установить утилиты эти и доступ к deb.debian.org есть.
Что это за магия? что ему надо?
Aleksey
Artem
Aleksey
не
плиз сделай sudo cat /etc/docker/daemon.json
Artem
Aleksey
нет такого файла
не суть ладно , а сделай такой файлик сможешь сам или помочь
Artem
ты через снап ставил
не, как тут сказано установил
https://docs.docker.com/engine/install/ubuntu/
Artem
Aleksey
просто похоже беда сеткой у меня завелся твой конфиг
Artem
хмм
Artem
странненько
Artem
вообще голый vps, ufw отключен
Aleksey
хмм
да не на багу больше похоже
Artem
Aleksey
Artyom
подскажите пожалуйста, в чем может быть проблема?
не выполняется скрипт создания протофайлов во время билда имейджа (No module named 'grpc_tools'), хотя поетри grpcio-tools корректно устанавливает. все билдится только если явно прописать команду python -m pip install grpcio-tools
RUN python -m pip install poetry==2.0.1 && \
poetry lock && poetry install --no-interaction --no-ansi --with proto &&\
cd /app/ && ./create_proto.sh
Aleksey
Artyom
Привет, чуть подробней не совсем понял ./create_proto.sh это скрип как проявляться в контейнере
#!/bin/sh
for i in $(find src -iname "*.proto")
do
echo "processing $i"
python3 -m grpc_tools.protoc -I. --python_out=. --pyi_out=. --grpc_python_out=. "$i"
done
уже исправил, сделал запуск через poetry, но конечно все равно интересно почему так происходит
Aleksey
Artyom
логи не смотрел наверное смотрел вот что он жаловался
ну, к моменту выполнения скрипта, соответствующая библиотека уже должна быть установлена, в итоге сделал вот так ( на самом деле скопипастил с другого сервиса)
RUN --mount=type=cache,mode=0755,target=/root/.cache \
python -m venv $POETRY_HOME ; \
$POETRY_HOME/bin/pip install poetry==2.0.1 ; \
ln -s $POETRY_HOME/bin/poetry /usr/bin/poetry
COPY --link poetry.lock pyproject.toml /app/
RUN --mount=type=cache,mode=0755,target=/root/.cache \
poetry config virtualenvs.create false ; \
python -m venv $VENV ; \
. $VENV/bin/activate ; \
poetry install --no-interaction --no-ansi --no-root ;\
poetry run ./create_proto.sh
Aleksey
Andrey
Наблюдаю странное поведение
Есть некоторый исполняемый файл
Его если запустить через ENTRYPOINT - > то он "зависает" на старте
docker-compose вечно находится в состоянии Attaching
Однако если войти в контейнер (через exec) - и запустить руками - то все ок, исполняемый файл запускается и работает
С чем может быть связано такое поведение? Куда копать?
Aleksey
Artem
Aleksey
МТУ эт чё?
В компьютерных сетях термин maximum transmission unit (MTU, англ. максимальная единица передачи) означает максимальный размер полезного блока данных
Махмуд
docker run -it --net=host --env-file=/etc/environment sms-sender
а у --env-file есть защита от
"файл не существует"
?
Aleksey
Aleksey
Махмуд
Aleksey
Vadim
Всем добрый день. Кто-нибудь работал с docker debug? Сам Docker пишет, что оно доступно только по платной подписке. Объясните почему, пожалуйста, если кто знает конечно какие-то киллерфичи этой функции
Aleksey
Aleksey
Vadim
дебагинг нужно делать почти всегда если чот облочка фигачешь
Ну по умолчанию в контейнере есть оболочка, к ней можно подцепиться и дебажить. Если distroless или другой минимальный образ и оболочки нет, то можно: 1) примонтировать статически скомпилированный busybox и указать командную оболочку в качестве входной точки (ENTRYPOINT) 2) с помощью системных утилит прикрепить необходимые пространства имён к оболочке хостовой системы
Так что хз зачем overhead такой нужен
Aleksey
Aleksey
Vadim
А вот и бесплатная альтернатива. Мб кому-нибудь понадобится ..
https://github.com/zeromake/docker-debug
Artyom
подскажите пожалуйста, наткнулся в докер файле на друг за другом идущие строчки. а в чем смысл? разве первой не достаточно будет?
COPY . /app
COPY ./src /app/src
Andrew
будет достаточно
Aleksey
Aleksey
Aleksey
Artyom
Из файла не понятно но нет не будет
то есть скопируется только корень папки? я думал там рекурсивно все скопируется
ENV PYTHONUNBUFFERED=1
ENV POETRY_VIRTUALENVS_CREATE=false
COPY . /app
COPY ./src /app/src
ENV PYTHONPATH /app
CMD python src/server.py
WORKDIR /app
вот начало файла, остальное уже RUN
Andrew
Aleksey
Вот тут ты уже прав будет рекурсия
Rose
Привет, Nazako! Добро пожаловать в RU.Docker — Официальное Русское Сообщество! Если ты не 🤖 ты знаешь что делать :)
Vladimir
Всем привет, подскажите, можно ли на Windows Docker Desktop запретить контейнерам автоматически запускаться при запуске докера (restart always), не меняя саму настройку restart always (чтобы в git не попало)
Mike
Mike
Mike
а вообще нашел инфу, оказывается есть специальный файл для таких вещей. Не знаю работает ли
Docker Compose по умолчанию читает два файла: docker-compose.yml и docker-compose.override.yml. В файле docker-compose-override.yml можно хранить переопределения для существующих сервисов или определять новые.
Rose
Привет, Ксения! Добро пожаловать в RU.Docker — Официальное Русское Сообщество! Если ты не 🤖 ты знаешь что делать :)
Nikita
Всем привет ! С чем может быть связанна эта ошибка ?
Nikita
Проверяю статус докера Пишет запущен
Александр
Александр
У пользака нет прав пользоваться докером
Nikita
Name
Nikita
Ввожу sudo usermod -aG docker hottour не помогает Пробовал ребутнуть несколько раз все равно выпадает ошибка Cannot conect to the docker daemon at tcp://localhost:2376 Is the docker daemon running
Максим
Nikita
Максим
Максим
Затем понять, откуда docker cli взял другой адрес, а не тот, что указан в логах. Вангую какой-нибудь docker context создан и активирован, с кривыми настройками
https://docs.docker.com/engine/manage-resources/contexts/
Nikita
Спасибо!!! Проблема была в контексте докера Там был кривой endPoint Я пересоздал контекст с var/run/docker.sock и машинка завелась🦾
Алик
ребят привет подскажите что не так с конфиг файлом
auth_enabled: false
server:
http_listen_port: 3100
ingester:
wal:
enabled: true
dir: /loki/wal
chunk_idle_period: 5m
chunk_retain_period: 30s
schema_config:
configs:
- from: 2020-10-24
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: index_
period: 168h
storage_config:
boltdb-shipper:
active_index_directory: /loki/index
shared_store: filesystem
Алик
: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
WARN[0000] networks.default: external.name is deprecated. Please set name and external: true
loki-1 | failed parsing config: /etc/loki/local-config.yaml: yaml: unmarshal errors:
loki-1 | line 25: field boltdb-shipper not found in type storage.Config. Use `-config.expand-env=true` flag if you want to expand environment variables in your config file
nersesyan-ar@profinance1dev:~/loki-grafana$
вот такаая ошибка