std::slavik
подскажите пожалуйста как собрать докер с python3 + полный ffmpeg (с openssl и libopus)
std::slavik
чет никак не получается - пробую за основу взять alpine python3 потом устанавливаю requirements
std::slavik
я так понял нужно сперва собрать питон с зависимостями, потом отдельно ffmpeg и через composer это все объединить
в рамках одного Dockerfile не получается
bama^boy
std::slavik
и я считал пока не начал собирать чтот пытаться, что все будет работать на основной OS
bama^boy
От основной ос только ядро
std::slavik
но почему то все контейнеры идут с centos alpine и тд
bama^boy
Почитай про докер ещё, чтоб было понятно, как он устроен. Информации в интернете навалом.
std::slavik
да уж много всего перечитал - пока что видимо что то смешалось в кашу - надо что то уже сделать полезное)
std::slavik
когда чет работает проще разобраться)
std::slavik
Alex
ilya
chroot != namespaces, в докере нет chroot
std::slavik
ну то есть нет же нужды накатывать операционку еще одну
std::slavik
если нужен питон и ffmpeg
Alex
17:55 $ docker run -it microsoft/windowsservercore:ltsc2016
Unable to find image 'microsoft/windowsservercore:ltsc2016' locally
ltsc2016: Pulling from microsoft/windowsservercore
3889bb8d808b: Pulling fs layer
6631c2d2a60c: Pulling fs layer
docker: image operating system "windows" cannot be used on this platform.
See 'docker run --help'.
Alex
и что же я делаю не так?
Alex
и нет, виндовые контейнеры на никсах не запустятся
bama^boy
Alex
а, тогда это к @fantasy_h1
std::slavik
а если уже у меня есть собранный ffmpeg на системе
Alex
а вообще винду в мусорку, да и все
std::slavik
я же могу в докер бинарники закинуть
ссылки сделать
bama^boy
std::slavik
если он просто форкает процесс демона
bama^boy
поставь туда просто третий питон и будет счастье
std::slavik
std::slavik
так - вроде бы понял - докер просто создает окружение и форкает процесс, соответственно если мы хотим в этом процессе питон или ffmpeg - придется базовые службы и каталоги операционки накатить какие то. В данном случае накатили убунту и на ней скомпилили ffmpeg.
Я через apt-get соответственно поставил в процессе сборки python3 и зависимости, вроде все встало, но почему то при запуске вызывается ffmpeg
std::slavik
FROM jrottenberg/ffmpeg:latest
ADD . ~/worker
WORKDIR ~/worker
COPY . .
ENV CLUSTER default
RUN apt-get update
RUN apt-get install -y python3
RUN apt-get install -y python-pip
RUN pip install --upgrade pip
RUN pip install -r requirements.txt
CMD ["python","worker.py","${CLUSTER}"]
bama^boy
std::slavik
Konstantin
Konstantin
Ну и как освоишь процесс - займись оптимизацией, а то он у тебя будет весить 2гига
Konstantin
Хотя понять как работают слои лучше сразу
std::slavik
std::slavik
а по переменным окружения еще подскажите
std::slavik
у меня это все висит на редисе
соответственно хочу название очереди которую воркер должен слушать подавать при запуске контейнера
как это лучше организовать
std::slavik
std::slavik
кеш чистить и лишнее выпиливать из убунты?
Anonymous
Jas
мужики
Jas
я тут образ собрал
Jas
php
Jas
весит гб
Jas
эт норма вообще?
SeniorAnykey
1гб ?
Jas
да
SeniorAnykey
Просто пхп? Без никто?
Jas
с модулями pdo
Jas
+ папка 300 метров, где либа
SeniorAnykey
Ну это все меняет. А что это за либа на 300 метро?
Jas
informix
SeniorAnykey
И для понимания - сравни с образами с докерхаба
Jas
ну вот я и говорю
Jas
там метро 450 примерно
Jas
в купе должно получиться 750
Jas
откуда 250 еще)))))))))))
Jas
просто у меня первый опыт поднятия своего image
SeniorAnykey
Кэш апта и прочий мусор чистил?
Jas
нет
SeniorAnykey
Ну вот
Jas
nfr
Jas
а можешь команду, если помнишь
SeniorAnykey
Возьми оф докер файл пыхи, и поправь под свои задачи)
Jas
я так и сделал)
Jas
правда зашел в контейнер и пришлось руками все ставить
SeniorAnykey
Jas
после этого , вышел и закоммитил
Jas
ну вот что-то опыта и знаний cl не хватило
SeniorAnykey
Ci тут не причем. И да с первого раза не все хорошо выходит
Jas
ну вот у меня сейчас все с первого раза получилось))))
SeniorAnykey
Но лучше всеж научится писать норм докеры и собирать образы по человечески
Sergey
бери образ на базе alpine немного съэкономишь места