Alpine - Docker: вернул ненулевой код: 139 - PullRequest
0 голосов
/ 12 февраля 2019

Я запускаю ту же сборку Docker на двух машинах:

  • Ubuntu 16.04
  • Debian 9.7

В Ubuntu все работает нормально, но этоПроблема, с которой я столкнулся в Debian во время сборки Docker:

The command '/bin/sh -c php7 /installer.php --install-dir=/usr/bin --filename=composer' returned a non-zero code: 139

Это мой Dockerfile:

FROM nginx:1.14-alpine
...
...
RUN curl https://getcomposer.org/installer -o /installer.php
RUN php7 /installer.php --install-dir=/usr/bin --filename=composer
...
...

В Linux код ошибки 139 указывает на ошибку сегментации.У меня есть память 15437156 КБ в Debian (Docker версия 18.06.2-ce) и 16147116 КБ в Ubuntu (Docker версия 18.05.0-ce).

Примечание: проблема возникает во время сборки docker build ...

Знаете ли вы, как это исправить в Debian?

1 Ответ

0 голосов
/ 22 февраля 2019

Я обновлял некоторые версии и начал сталкиваться с аналогичной проблемой для вас, погуглил и нашел ваш пост здесь.Я получал:

RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && php composer-setup.php && php -r "unlink('composer-setup.php');" && mv composer.phar /usr/local/bin/composer
 ---> Running in e73735530b5d
All settings correct for using Composer
Segmentation fault

После некоторого тестирования я обнаружил, что использование FROM alpine:3.9 каждый раз вызывало ошибку Seg, но при понижении версии Alpine до FROM alpine:3.8 это прекращалось.

Хотя я не уверен, почему, но похоже, что в последней версии Alpine что-то сломалось, поскольку я также не получил эту проблему в Debian, Debian Slim или Ubuntu 18: 04.

...