Danila
а как происходит запуск?
т.е, условный баш?
Danila
sudo docker run -d -p 3306:3306 -v /var/lib/docker/volumes/mysql-data:/var/lib/mysql zabbix-db /bin/bash ?
Andrey
может у тебя DJANGO_SETTINGS не установлен?
это как такое может быть?)
Sergei
sudo docker run -d -p 3306:3306 -v /var/lib/docker/volumes/mysql-data:/var/lib/mysql zabbix-db /bin/bash ?
Если вы хотите заббикс запилить вместе с базой в один образ - зря. возьмите docker-compose и соедините уже собранный образ mysql (весьма приличный, как тут заметили) с заббиксом.
Danila
не делайте так, у всех BD есть куда как приличные референсные образы
я понимаю, но докер мой, пока что, на весьма начальном уровне. т.е. я могу написать нормальный докерфайл, но разобраться, почему это не заработало, тоже хотелось бы
Ivan
это как такое может быть?)
ну эта та переменная которую задаёшь ты сам либо же в manage.py она втыкается сама при генерации через django-admin
Danila
отдельно база, бек, фронт
Sergei
окей. тогда если у вас просто база - возьмите готовый образ базы: https://hub.docker.com/_/mysql/
Andrey
я понимаю, но докер мой, пока что, на весьма начальном уровне. т.е. я могу написать нормальный докерфайл, но разобраться, почему это не заработало, тоже хотелось бы
в вашем случае просто надо сделать docker pull dbname и запустить контейнер с нужными опциями, не городя свой кривой докерфайл
Danila
да, едрить, я понимаю, но всё-таки понять, почему не работает - это было бы полезно
Sergei
потому что вы не указываете команду. нужен либо CMD в докерфайле, либо указать в строке запуска, что делать.
Andrey
потому что вы творите херню (извините за мой французский)
Andrey
если интересно, просто посмотрите официальный докерфайл к BD и своё творение и найдите 10 отличий
Roman
ну чего вы набросились, человек спрашивал об инструментах, а не почему у него не работает :) @CatDisaster docker logs <CONTAINER_ID> лог выполнения внутри контейнера. Если конечно какая то команда вообще была указана(как заметили выше) если падает на этапе билда, то нужно ловить контейнер айди промежуточного контейнера. Что то вот такое: Step 5 : COPY ./config/nginx.conf /etc/nginx/nginx.conf ---> 238f96816787 Removing intermediate container c414b9177020 Step 6 : COPY ./config/helloflo.conf /etc/nginx/sites-available/ Если упал к примеру шаг 6 то надо запустить контейнер 238f96816787 и проверить почему падает команда шага 6 docker run -it 238f96816787 bash
Danila
т.е. билдится оно легко и прекрасно оповещая об этом в конце билда
Roman
т.е. билдится оно легко и прекрасно оповещая об этом в конце билда
я понял что не на билде падает. просто решил на будущее пригодится вам. Но и сам контейнер у вас не падает. Он выполняет ровно ту задачу которую вы ему поставили в докерфайле :) а именно скачать образ убунты, поставить мускуль, расшарить фольюм окрыть порт и... все. больше от контейнера судя по докерфайлу вам ничего не нужно. У вас спрашивали про способ запуска потому что можно указать команду которая должна выполняться в контейнере через docker run (это тот кусок про условный баш). Вы относитесь к контенйеру так как будто бы он полноценная ОС. Но это не так. мускуль сервер не стартует автоматически после установки как это бывает в обычной убунте. Вы должны явно указывать что и как запускать с каким конфигом и куда вывод выполнения направлять. Ровно поэтому вам и предложили использовать уже преднастроенные официальные образы под Mysql в которых это все уже настроено
Danila
я понял что не на билде падает. просто решил на будущее пригодится вам. Но и сам контейнер у вас не падает. Он выполняет ровно ту задачу которую вы ему поставили в докерфайле :) а именно скачать образ убунты, поставить мускуль, расшарить фольюм окрыть порт и... все. больше от контейнера судя по докерфайлу вам ничего не нужно. У вас спрашивали про способ запуска потому что можно указать команду которая должна выполняться в контейнере через docker run (это тот кусок про условный баш). Вы относитесь к контенйеру так как будто бы он полноценная ОС. Но это не так. мускуль сервер не стартует автоматически после установки как это бывает в обычной убунте. Вы должны явно указывать что и как запускать с каким конфигом и куда вывод выполнения направлять. Ровно поэтому вам и предложили использовать уже преднастроенные официальные образы под Mysql в которых это все уже настроено
я попробовал исполнить с CMD ["mysqld"] в конце, но результат такой же
Danila
соотв. сейчас оно выглядит так: cat@docker:~/images/zabbix$ cat Dockerfile # Zabbix: DB-part FROM ubuntu:xenial VOLUME ["/var/lib/mysql/"] ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update RUN apt-get -q -y install mysql-server EXPOSE 3306 CMD ["mysqld"]
Evgeny
Еще раз - возмите готовый образ мускула и расковыряйте. Вы делаете фигню
Danila
да, так и поступлю. спасибо
Roman
Не надо так.
А как нада?
Mercuree
это как такое может быть?)
Не знаю правильно ли я понял, но на всякий случай https://docs.docker.com/compose/startup-order/
Denis
А как нада?
сислог в контейнер, и s6 туда же
banuchka
воу :)
Denis
=)
Denis
воу :)
расскажи как надо. если не устал еще конечно.
banuchka
да я просто знакомую схему увидел, вот и вырвалось.
banuchka
я по идее именно про это и рассказывал в последний раз.
Denis
мы в 2016м а логи до сих пор боль
Denis
сидел тут настраивал сислог, простейшая задача, filename положить в syslog tag - rsyslog/syslog-ng не умеют.
Denis
и вся суперидея затащить логи по *.log а на той стороне их также развернуть проваливается с треском
banuchka
интересный кейс, кстате
Denis
ну просто у нас приложеньки пишут по куче логов от разных операций. это такой переходный этап к микросервисам. когда логов уже много а сервис все еще один )))
banuchka
у нас не много такого, что пишет в файл и нам нужно из него читать rsyslog-ом
banuchka
а где такое есть - там при формировании контейнера уже понятно что за логи и как их тегать.
banuchka
ну так тебе твою задачу костыликами же можно решить - на основе шаблона делать правила с тегами для rsyslog, опираясь на те файлы, что есть... ну и релоад там
banuchka
через одно место, конечно, но задачу решит.
Pavel
мы в 2016м а логи до сих пор боль
Возможно потому что задача коллекционирования логов это не просто задача, а проблема, аналогичная CAP теореме. Фактически это то же извлечение информации по определенным критериям.
Denis
Херня какая то. Мне файлики посинкать из одного место в другое, желательно с не оч большим буфером и все
Denis
Ой все ))
nvkv
Котаны, смотрите какая пепяка. Есть вот такой скрiiiпт: #!/bin/sh env | grep CF_ > ./build_envfile ls -la build_envfile docker run -i --env-file build_envfile -v "$PWD/build_envfile:/build.env" control-node cat /build.env когда я его выполняю локально — всё хорошо
nvkv
А когда его выполняет Teamcity, отчего-то /build.env в контейнере это директория
nvkv
wtf?!11
nvkv
Причём пустая напрочь
Vir
ребята, докер у меня хочет стянуть отсюда docker.io/library/hello-world
Vir
в итоге не работает, где оно настраивается?
Vir
народ, где живёт эта репа docker.io/library/nginx
Vir
кто знает
Anton
https://hub.docker.com/_/nginx/
Anton
как и все репы - docker hub
Vir
когда я делаю docker pull nginx он в итоге мне пишет нет тэга latest хотя на хабе есть этот тег, делал курл, так курл мне 404 возвращает но если чделать docker pull -a nginx он мне начинает грузить
Vir
а хеловорлд так и не запустился ((
Yaroslav
привет, есть вопрос. К примеру у меня есть приложение в контейнере, но в зависимости от датацентра там должен быть установленн уникальный пакет. ну к примеру если ставим на DO - pip install do_integration, на aws - aws_integration и тд. Как лучше пойдоти к решению? Один контейнер и уже на месте устанваливать нужный пакет. Или заранее делать 10+ имаджей которые будут отличаться только версией пакета?
Anton
$ docker pull nginx Using default tag: latest
Anton
и все работает
R
берёшь latest и прилетает тебе PHP7 в котором mysql отломан, а половина CMS в принципе не умеют нифига другого =)
Vir
и все работает
так в том то и дело, не работате
Vir
docker run hello-world Unable to find image 'hello-world:latest' locally Pulling repository docker.io/library/hello-world docker: Tag latest not found in repository docker.io/library/hello-world. See 'docker run —help'.
Vir
вот хеловорлд, там вообще один только латест есть
Anton
$ docker info
Anton
какой registry стоит?
Vir
Registry: https://index.docker.io/v1/
Anton
тогда вообще не понятно что не так
Vir
вот и мне не понятно
Vir
не первый день бьюсь
Evgeny
Попробуй вайршарком посмотреть что сервер отвечает
Roman
https://toster.ru/q/359658 тут на днях задавали вопрос похожий, только не помню нашли ли ответ
Yaroslav
Выбирает из заранее установленных?
Vir
это бзец какойто
Vir
три дня оно не работало, а ща запустил и заработало
Vir
головой_об_стену
Dmitry
ребят, можно отреверсить как-то докер?
Lex
там код открытый, зачем его реверсить?