Перезапуск Docker-контейнеров (132), недопустимая инструкция (дамп ядра)
2 ответ
- голосов
-
- 2019-03-05
Я считаю,что это из-за проблемы сборки с некоторым модулем OCaml,который проверяет аппаратную архитектуру во время сборки. Это просачивается в образы Docker,которые выдают
Illegal instruction
при запуске другой архитектуры.Подробнее об этом можно узнать здесь и здесь .
Решение состоит в том,чтобы самостоятельно создать образ Tezos Docker на той инфраструктуре/оборудовании,на которой вы хотите его запустить. Вы можете найти рабочий Dockerfile здесь .
< sizesUPDATE
Здесь добавлен декларативный файл Dockerfile
Dockerfile-ubuntu
- это то,что вам нужно,также убедитесь,что вы используете необходимое оборудование для работы. Должны работать так же,как официальные изображения (с использованиемentrypoint.sh и т. Д.)I believe this is because of a build issue with some OCaml module that checks hardware architecture at build time This leaks into the Docker images which throws
Illegal instruction
when run a different arch.You can read more about it here and here.
The solution is to build the Tezos Docker image yourself on the infra/hardware you want to run it. You can find a working Dockerfile here.
UPDATE
Added some declarative Dockerfile's here
TheDockerfile-ubuntu
is the one for you, also make sure to build on the hardware you need to run. Should work the same as the official images (using entrypoint.sh etc.)-
Связанные проблемы кажутся именно тем,с чем я столкнулся.Спасибо за это!Я собрал Tezos из Dockerfile и запустил контейнер из образа.Теперь делает то же самое - дамп ядра.Я все еще озадачен.The linked issues seem to be exactly what I'm experiencing. Thanks for that! I built Tezos from the Dockerfile and fired up a container from the image. Now it's doing the same thing - core dump. I'm still puzzled.
- 0
- 2019-03-05
- Rob Hitchens
-
Странный!Это решило проблему для меня. Вы «dockerbuild» на том же компьютере,где пытаетесь «docker run»?Strange! That solved it for me Did you `docker build` on the same machine where you are trying to `docker run` ?
- 0
- 2019-03-05
- asbjornenge
-
Спасибо,да.Я попробую обновленный ответ.Thanks, yes I did. I'll give the updated answer a try.
- 0
- 2019-03-05
- Rob Hitchens
-
@RobHitchens дайте мне знать,помог ли этот файл на основе ubuntu,и я могу собрать правильный файл с последней частью,которая будет работать так же,как и другие@RobHitchens let me know if that ubuntu based file helped, and I can put together a proper one with a final part that will work same as the others
- 1
- 2019-03-05
- asbjornenge
-
Если что-то у вас выскочит,я сделал `dockerbuild .`,затем` docker run -t -ttezos/tezos: alphanettezos-node`.Сейчас работаю над новым предложением.In case something jumps out at you, I did `docker build .`, then `docker run -t -t tezos/tezos:alphanet tezos-node`. Working on the new suggestion now.
- 0
- 2019-03-05
- Rob Hitchens
-
Ах,вы все еще используете старый образtezos из хаба,тогда вам нужно сделать: `dockerbuild -t rob/tezos: alphanet .`,а затем` docker run -rm -it rob/tezos: alphanet` Имя образа `rob/tezos: alpanet` может быть любым в формате `владелец/изображение: версия`.Ah, you are still running the old tezos image from hub then You need to do: `docker build -t rob/tezos:alphanet .` and then `docker run -rm -it rob/tezos:alphanet` The image name `rob/tezos:alpanet` can be anything in the format `owner/image:version`
- 0
- 2019-03-05
- asbjornenge
-
Это работает.Dockerfile в вашем обновленном ответе (alpine?) Создал контейнер,который кажется стабильным.Это ключ,который мы ищем?:-)That works. The Dockerfile in your updated answer (alpine?) has made a container that seems stable. Is that the clue we're looking for? :-)
- 0
- 2019-03-06
- Rob Hitchens
-
Давайте [продолжим это обсуждение в чате] (https://chat.stackexchange.com/rooms/90649/discussion-between-rob-hitchens-and-asbjornenge).Let us [continue this discussion in chat](https://chat.stackexchange.com/rooms/90649/discussion-between-rob-hitchens-and-asbjornenge).
- 0
- 2019-03-06
- Rob Hitchens
-
- 2019-03-06
Я помню,как несколько месяцев назад столкнулся с той же проблемой в alphanet.Я считаю,что оказалось,что образ докера был скомпилирован способом,который не удался на некоторых конфигурациях оборудования.Мне не удалось найти проблемы/коммитыgitlab именно для этой проблемы,но https://gitlab.com/tezos/tezos/issues/220 имеет отношение.
I recall encountering the same problem in alphanet months ago. I believe it turned out that the docker image had been compiled in a way that failed on some hardware configurations. I have not been able to find gitlab issues/commits for exactly the problem, but https://gitlab.com/tezos/tezos/issues/220 is related.
Я постоянно сталкиваюсь с проблемой показа с помощью alphanet и docker в ubuntu. Я подозреваю,что при настройке я постоянно упускаю из виду это. Мои докер-контейнеры работают всего секунду или две,а затем перезапускаются (132).
Некоторые ковыряния наводят меня на мысль,что они сразу же перезапускаются после паники.
Я пробовал Ubuntu 16.04. 18.04,virtualBox MV и vmWare и даже AMD и Intel. 4-6 процессоров и 4-8 ГБ оперативной памяти. Результат всегда один и тот же.
Другие контейнеры докеров работают нормально.
Вот изображение на случай,если это поможет.
Вот типичный журнал Docker для контейнера:
Буду очень благодарен за любые мысли или предложения.