Solyar
ерунда у меня там, лабы делать надо
накати orbstack.dev он попробует импортировать в себя все что есть в твоем текущем докере
Solyar
и будет тебе счастье
Ilya
я бы не рекомендовал ставить сторонние тулы когда учишься
Ilya
Юля
а как мне тогда починить докер этот вредный
Ilya
а как мне тогда починить докер этот вредный
ты так и не ответила ставила ли ты его с сайта, я не понял
Ilya
Через brew отвечала вроде)
ну я прост рекомендовал десктоп поставить
Ilya
удалив тот что через brew
Юля
да, через brew, изначально с сайта, но он не работает
Solyar
Первая ссылка в гугле ваще десктоп как в брю занесло непонятно)
Юля
да потому что не работает по первой ссылке
Solyar
да потому что не работает по первой ссылке
Не ругайся. То есть ты поставила через brew и он у тебя не работает?
Юля
Я не ругаюсь🥺
Юля
Да, через сайт такая история
Юля
через brew такая docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
Vitaly
Тебе же напиали ставь десктоп, и потом сюда с ошибкой что не работает
Vitaly
У тебя на маке докер через виотуальную машину ранается
Vitaly
Все там нормально работает
Vitaly
Так нажми ран
Юля
нигде не нажимается
Vitaly
Рестарт попробуй
Юля
Юля
время от времени вылазит
Vitaly
Может для vm памяти не хватает, сетинги не трогала?
Юля
ничего не трогала
Vitaly
Ну и снеси в начале все что до этого поставила через брю. Хз какие там свйд эфекты ождать от этого сейчас
Vitaly
И оперитивы сколько на маке?
Юля
снесла перед тем как открыть десктоп
Anatoliy
Всем привет, подскажите пожалуйста, у меня есть docker-compose и dockerfile, как это запрушить в docker hub? И как потом запустить у себя с docker hub
Anatoliy
Просто прописываю docker-compose push и у меня все образы скипаются просто
Anatoliy
В Docker-hub авторизован чз консоль
Adam 🫧
Добрый вечер всем! Я хотел бы уточнить правильность моего метода создания Docker-контейнеров. У меня есть три модуля: сайт, NAST воркер и Fluent локализация. Для того чтобы сайт мог использовать Fluent локализацию, мы включаем её в Docker-контейнер, помимо модуля сайта. Здесь, кажется, все довольно логично и понятно. Однако у меня есть определенные сомнения, касающиеся копирования файлов модуля NATS воркера в контейнер сайта. Сайт использует определенные типы сообщений, представленные в виде обычных перечислений (enums) или dataclass, которые находятся в модуле NATS воркера. Они необходимы сайту для отправки сообщений с корректными набором данных (типа и структуры). Таким образом, у меня выходит, что модуль NATS воркера копируется в контейнер сайта. Однако возникает вопрос о дублировании модулей. Мне необходимо запускать NATS воркер, я создаю отдельный контейнер куда передаю соответствующий модуль и запускаю его для обработки входящих сообщений. В одном случае модуль нужен для обработки сообщений, а в другом - только для отправки в правильном виде. Призадумался, возможно, это не самый оптимальный способ. Может быть, стоит подумать о выделении общих файлов и ресурсов отдельно? Или это не играет большой роли и вполне ходовая практика?
Adam 🫧
Да и в каждом контейнере устанавливаются requirements.txt для python. Как-то мне кажется это все слишком.. 🤔 Либо я накручиваю себя ненужной сложностью.
Maxim
Добрый вечер всем! Я хотел бы уточнить правильность моего метода создания Docker-контейнеров. У меня есть три модуля: сайт, NAST воркер и Fluent локализация. Для того чтобы сайт мог использовать Fluent локализацию, мы включаем её в Docker-контейнер, помимо модуля сайта. Здесь, кажется, все довольно логично и понятно. Однако у меня есть определенные сомнения, касающиеся копирования файлов модуля NATS воркера в контейнер сайта. Сайт использует определенные типы сообщений, представленные в виде обычных перечислений (enums) или dataclass, которые находятся в модуле NATS воркера. Они необходимы сайту для отправки сообщений с корректными набором данных (типа и структуры). Таким образом, у меня выходит, что модуль NATS воркера копируется в контейнер сайта. Однако возникает вопрос о дублировании модулей. Мне необходимо запускать NATS воркер, я создаю отдельный контейнер куда передаю соответствующий модуль и запускаю его для обработки входящих сообщений. В одном случае модуль нужен для обработки сообщений, а в другом - только для отправки в правильном виде. Призадумался, возможно, это не самый оптимальный способ. Может быть, стоит подумать о выделении общих файлов и ресурсов отдельно? Или это не играет большой роли и вполне ходовая практика?
На каждый чих отдельный контейнер
Aigerim
#vacancy #Senior Continuous Delivery Engineer (DevSecOps) #Sweden SFox Group GmbH Salary: 5k-6k In this role, you will be a part of a team that consists of 5 highly skilled and engaged engineers. Our mission is to provide a world-class developer experience. We strive to provide generic solutions that help other teams to develop, test, and deliver their software. Our development tool chain is primarily based on GitHub Actions, Drone CI, GitHub.com, Nexus, SonarCloud, Prometheus, and Grafana. We provide services and support to other development teams to help them out being able to develop and deliver their software within all our environments, with the highest possible quality, security, and efficiency. We are looking for a person with a few(5-6) years of working experience and think that you have knowledge within: CI/CD tooling Docker/Kubernetes/OpenShift Developer experience (preferable Java) AWS Security Linux (preferably Red Hat family) Terraform The following knowledge would be beneficial: Java Python Golang Maven/Gradle/npm CV: aigerim.alibek11@gmail.com
Константин
Привет. Подскажите, пожалуйста, как правильно настроить часовой пояс внутри контейнера? В логах идет смещение.
Владимир
ENV TZ Europe/Moscow
Владимир
или ENV TZ="Europe/Moscow"
Владимир
в dockerfile
Константин
в dockerfile
в действующем контейнере вариантов нет?
Владимир
в действующем контейнере вариантов нет?
Есть, открыть терминал контейнера и выполнить echo Europe/Moscow > /etc/timezone
Shutov_Nikolay
Привет. Подскажите, пожалуйста, как правильно настроить часовой пояс внутри контейнера? В логах идет смещение.
Можно еще пробросить в контейнер каталог localtime с хоста на котором запускается, ну это в том случае если на нем нужная TZ volume: - /etc/localtime:/etc/localtime:ro
Владимир
Всех приветствую! Подскажите пожалуйста. Если я не передаю флаг -it при запуске docker run, то что контенер делает с stdin?
tamtakoe
Подскажите еще, как в переменные окружения контейнера передать все переменные окружения хоста? Контейнер запускается через docker stack deploy
😶‍🌫️
Подскажите еще, как в переменные окружения контейнера передать все переменные окружения хоста? Контейнер запускается через docker stack deploy
Вообще это не самая секьюрная практика делать так, но если очень надо, то только вручную, автоматического решения для этого нет , т.к? swarm работет на уровне служб и конфигурацией на уровне кластера, можно через env на хосте передать в docker compose который вы используете с docker stack deploy
tamtakoe
А как тогда лучше сделать? У меня в конфиг, например, передаются плейсхолдеры для настройки базы в т.ч. пароли. Вроде как все сервисы, которые видел (запуск Постгреса из докер-образа, например) берут такие данные из переменных окружения...
Andrew
докер сворм/кубернетс
Азат
portainer
phirit
Добрый, подскажите как сменить ID в network? Или создать новую с нужным. Ситуация compose был создан со старой версией 1.29.2, после обновления на v2.20.2 изменилась подсеть, было принято решение удалить и пересоздать подсеть. Но новый compose при запуске контейнеров все равно ссылается на ID старой. Как можно решить эту проблему?
Make
FROM python:3.10.6-slim ARG UID ARG GID ENV UID=${UID} ENV GID=${GID} ENV DEBIAN_FRONTEND="noninteractive" RUN groupadd -g $GID python && \ useradd -g python -u $UID -m -d /app -s /bin/bash python RUN python3.10 -m pip install --upgrade pip USER $UID ENV PATH=$PATH:~/.local/bin ENV PATH="${PATH}:/app/.local/bin" WORKDIR /app ENV PYTHONPATH="./" COPY --chown=$UID:$GID ./data/backend /app RUN python3.10 -m pip install -r ./requirements.txt RUN python3.10 -m pip install django-jet-reboot Подсобите пожалуйста: такой файл. Если написать RUN python 3.10 -m pip list, то в списке будет Django. Но я все равно ловлю вот это говно: backend | Traceback (most recent call last): backend | File "/app/manage.py", line 11, in main backend | from django.core.management import execute_from_command_line backend | ModuleNotFoundError: No module named 'django' backend | backend | The above exception was the direct cause of the following exception: backend | backend | Traceback (most recent call last): backend | File "/app/manage.py", line 22, in <module> backend | main() backend | File "/app/manage.py", line 13, in main backend | raise ImportError( backend | ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment? Уже мозг сломал, не понимаю, где собака закопана.
Andrew
FROM python:3.10.6-slim ARG UID ARG GID ENV UID=${UID} ENV GID=${GID} ENV DEBIAN_FRONTEND="noninteractive" RUN groupadd -g $GID python && \ useradd -g python -u $UID -m -d /app -s /bin/bash python RUN python3.10 -m pip install --upgrade pip USER $UID ENV PATH=$PATH:~/.local/bin ENV PATH="${PATH}:/app/.local/bin" WORKDIR /app ENV PYTHONPATH="./" COPY --chown=$UID:$GID ./data/backend /app RUN python3.10 -m pip install -r ./requirements.txt RUN python3.10 -m pip install django-jet-reboot Подсобите пожалуйста: такой файл. Если написать RUN python 3.10 -m pip list, то в списке будет Django. Но я все равно ловлю вот это говно: backend | Traceback (most recent call last): backend | File "/app/manage.py", line 11, in main backend | from django.core.management import execute_from_command_line backend | ModuleNotFoundError: No module named 'django' backend | backend | The above exception was the direct cause of the following exception: backend | backend | Traceback (most recent call last): backend | File "/app/manage.py", line 22, in <module> backend | main() backend | File "/app/manage.py", line 13, in main backend | raise ImportError( backend | ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment? Уже мозг сломал, не понимаю, где собака закопана.
а зачем ты питонпас переопределяешь?
Denis 災 nobody
есть контейнер, я могу сделать docker exec -ti SOME bash и внутри make model но если я пытаюсь запустить сразу docker run $IMAGE "make model" то получаю docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "make model": stat make model: no such file or directory: unknown. что не так?
Evgeniy
Ну и какой entrypoint Потому что есть entrypoint и cmd(command) и между ними есть различия
Е1
привет, ребят! запускаю несколько контейнеров в compose для postgres поднимаю из дампа и отдельно скриптом с хоста ожидаю появления логов "database system is ready to accept connections" дважды, чтобы потом поднять остальные контейнеры вопрос: а healthcheck контейнера не может быть построен на основе логов? чтобы нативными механизмами этот момент отследить я, конечно, подозреваю, что, знаю ответ (нет), но все-же
Denis 災 nobody
Полный путь к мейку тоже не помог
Evgeniy
В образе
а что у вас в entrypoint прописано у образа ?
Evgeniy
попробуйте docker run <image> —entypoint make <target>
Е1
в новых версиях compose depends_on может работать по healtcheck главное его корректно прописать
да, я depends_on и хочу прописать по хелзчеку вопрос, могу ли я в хелзчеке достучаться до логов контейнера?
Evgeniy
да, я depends_on и хочу прописать по хелзчеку вопрос, могу ли я в хелзчеке достучаться до логов контейнера?
теоритически да (если прокинуть сокет докера из него читать логи) практически это нахер не нужно google docker postgres healtcheck там просто ожидания открывания порта проверить и профит
Evgeniy
вот вам даже актуальный пример нагуглил
Evgeniy
https://github.com/peter-evans/docker-compose-healthcheck/blob/master/docker-compose.yml
Evgeniy
test: ["CMD-SHELL", "pg_isready"]
Evgeniy
и здесь как раз вариант с service_healhy
Е1
вот вам даже актуальный пример нагуглил
если бы все так просто было) если погуглите еще чуть больше о деталях, то, этот пример не сработает, если вы восстанавливаетесь из достаточно большого дампа в init.db pg_isready отдаст вам true без всяких вопросов, так как база действительно доступна, да только в этот момент реально не все данные доедут еще приходится отслеживать некоторые специфичные логи
Evgeniy
на самом деле можно даже entrypoint не переопределять, а добавить свой скрипт после того как данные востановятся
Evgeniy
насчет переопределения entrypoint звучит действительно хорошо спасибо, подумаю в этих направлениях
его можно не переопределять там файлы по сортировке выполняются вы можете просто добавит .sh скрипт в конец который создаст файлик
Alexey
Добрый день подскажите, пожалуйста, где ошибка Не могу понять как правильно написать FROM alpine:latest RUN apk update && apk upgrade --no-cache && apk add bind-tools && apk add dnsmasq RUN cat > /etc/resolv.conf << EOF 127.0.0.1 EOF && \ cat >> /etc/dnsmasq.conf << EOF port=53 listen-address=127.0.0.1 strict-order no-resolv no-poll server=172.20.0.10 server=10.54.0.2 EOF && \ rc-update add dnsmasq default && rc-service dnsmasq start CMD ["/bin/sh»] Error response from daemon: dockerfile parse error line 6: unknown instruction: 127.0.0.1
Evgeniy
В файле докер в 6 строке
Evgeniy
Символы конца строки надо экранировать