Andrew
а копируешь ты database - это другое?
Yegor
а копируешь ты database - это другое?
это просто директория
Andrew
а как образ собираешь
Yegor
а как образ собираешь
docker build --no-cache -t tg-bot:1 .
Andrew
эм, а зачем тебе билдер если ты его не используешь при сборке
Andrew
похоже у тебя из старого билдера копирует
Yegor
не совсем понял про что вы, если в крации, как тогда исправить сборку?
Andrew
вместо from python написать from builder
Yegor
вместо from python написать from builder
если я правильно вас понял заменил докерфайл на: FROM python:3.11.4-alpine3.18 AS builder COPY requirements.txt requirements.txt RUN python -m venv /venv && \ /venv/bin/pip install --upgrade pip && \ /venv/bin/pip install --no-cache-dir -r requirements.txt FROM builder WORKDIR /app COPY --from=builder /venv /venv COPY main.py /app/ COPY bot/ /app/bot/ COPY middlewares/ /app/middlewares/ COPY database/ /app/database/ CMD ["/venv/bin/python3", "main.py"] но базы по-прежнему остались, до этого все предыдущие образы я удалил
Andrew
а что значит остались? ты запускешь этот образ, заходишь в него и там есть файлы старых баз*
Andrew
FROM python:3.11.4-alpine3.18 COPY requirements.txt requirements.txt RUN python -m pip install --no-cache-dir -r requirements.txt WORKDIR /app COPY main.py /app/ COPY bot/ /app/bot/ COPY middlewares/ /app/middlewares/ COPY database/ /app/database/ CMD ["python", "main.py"]
Andrew
попробуй так
Andrew
вообще раз базы есть в образе значит ты их туда копируешь
Andrew
образ создается на основе докерфайла, им неоткуда взяться
Yegor
вообще раз базы есть в образе значит ты их туда копируешь
но откуда им там взяться если их уже нет?
Andrew
я не знаю, магии не бывает, смотри свою файловую систему)
Andrew
ну значит они у тебя есть и скопировались
Yegor
каков вариант если их добавить в dockerignore что это сработает?
Andrew
добавь )
Yegor
добавь )
ладно это не сработало, но все равно спасибо
Andrew
есть ощущение что ты собираешь не из тех файлов, из которых думаешь..
Yegor
это вероятно, но я не знаю как проверить
Andrew
docker system prune -f docker rmi $(docker images -q)
Andrew
и попробуй собрать заново
Yegor
docker system prune -f docker rmi $(docker images -q)
пересобрал, директория образа
Andrew
сдаюсь )
Yegor
сдаюсь )
я тоже, спасибо что помогали
Andrew
отдохни, может завтра что то придумаешь)
Yegor
отдохни, может завтра что то придумаешь)
думаю проще будет удалить директорию и заново скопировать с гита
AHTOH
Доброе! Надеюсь на канале работает модерация? А то на соседнем бардак какой то...
Andrew
да
AHTOH
Тогда всем здрасте! Остаюсь с вами!
Aleksey
И администрации адекватная
Dan
И вообще у нас докер лучше
AHTOH
Подскажите в чем принципиальная разница volumes: services: frontend: image: node:lts volumes: - myapp:/home/node/app volumes: myapp: Почему не написать просто: volumes: - /disck1/path:/home/node/app
AHTOH
Из-за пути который может меняться?
Э... например? В каком случае? myapp это типа переменная которой можно управлять и присваевать разные значения по ходу выполнения контейнера?
Skaz
Я про это
AHTOH
Я про это
А что не так? Я все равно не понял отличия
AHTOH
Первое - Volume. Второе - Bind mount.
Т.е. если тут: volumes: - myapp:/home/node/app - myapp:/home/node/app1 - myapp:/home/node/app2 - myapp:/home/node/app3 то на хосте они будут доступны в одном каталоге? Но веть это работает и так.
AHTOH
Ребят! Посоветуйте Почтовый сервер на докере. Что бы поменьше телодвижений. А то смотрю что предлагается такие портянки конфигов и приложений. Может есть что попроще. А то Яндекс отказал в бесплатной поддержке почтовых сервисов и теперь мои домашние сервера ругаются о недоставке почты.
Aleksey
Https://setup.mailu.io.2.0
AHTOH
Привет mailu круто все и конфиг через гуй
Чет смотрю в сторону docker-mailserver Там гуя нет, но вроде все просто настраивается. Правда пришлось сетку под него делать: networks: dockervlan: ipv4_address: 10.16.88.150 networks: dockervlan: name: dockervlan driver: macvlan driver_opts: parent: enp0s20f0 ipam: config: - subnet: "10.16.88.0/24" #ip_range: "192.168.0.64/26" gateway: "10.16.88.1"
Aleksey
Не забивий эти все штуки по одному принципу строятся
Aleksey
Тот который я написал все тоже самое
Aleksey
Ну типа сборки их можно назвать
AHTOH
Но с сеткой мне понравилось. Не знал как сделать что бы внешний IP можно было получить в docker. А теперь есть опыт получения и все пашет. Очень этого не хватало. В VirtualBOXe этот режим называется bridge. Иногда очен нужен бывает.
Aleksey
Согласен
Aleksey
Виртул бокс уже все не актуально
AHTOH
Виртул бокс уже все не актуально
Ну почему же... Очен даже на десктопе актуально...
AHTOH
Я теперь семилинками воюю Есть семилинк privkey.pem указывающий на ../../archive/npm-14/privkey4.pem Какой volumes скормить контейнеру пока не пойму.
Aleksey
Я теперь семилинками воюю Есть семилинк privkey.pem указывающий на ../../archive/npm-14/privkey4.pem Какой volumes скормить контейнеру пока не пойму.
Да вот то что ты сейчас делаешь как я думаю в рамках обучения сразу привыкай делать через CI/CD
AHTOH
Ковбой старообрядец 😁
Основная ОС на ноуте Manjaro, а среды разработки которыми пользуюсь они на Винде в основном. Потому и держу для разных версий кучу виртуалок. Основная машина не загажен всяким хламом.
Aleksey
Это я не понял.
CI/Cd подход такой часто имеют веду GITLab или аналоги
AHTOH
сразу привыкай делать через CI/CD -- Почитал что это за хрень, все равно не понял. :) Гитом пользуюсь https://github.com/iAHTOH?tab=repositories
Aleksey
сразу привыкай делать через CI/CD -- Почитал что это за хрень, все равно не понял. :) Гитом пользуюсь https://github.com/iAHTOH?tab=repositories
Смысл что ты сейчас с контерами работаешь локально по классике это не правильно я ругаю за такое
AHTOH
Смысл что ты сейчас с контерами работаешь локально по классике это не правильно я ругаю за такое
Э... я же только под себя конфиги делаю под существующие образы. Зачем забивать гитхаб yaml фалами?
AHTOH
Сами образы же не билдю...
Aleksey
Э... я же только под себя конфиги делаю под существующие образы. Зачем забивать гитхаб yaml фалами?
А вот поэтому ты ковбой старообрядец мое почтение не сарказм сам очень долго перестраивался
AHTOH
А вот поэтому ты ковбой старообрядец мое почтение не сарказм сам очень долго перестраивался
Ну покажи пример. Собственно я обучаем может и сам топить дальше буду за это. 2 года назад я еще плевался на докеры и считал что не стоит моего времени разбирается с ними. Год назад уже понял что без них никак и все гипервизоры идут нафиг :) Теперь пытаюсь убедить в этом своих коллег.
AHTOH
Это уже кубернетис
Aleksey
Винда линуха любой дистриб должен работать время 5минут
Aleksey
Это уже кубернетис
Не это не кубер еще
Aleksey
Кубер это сварм в аналоги докера