Aveți erori de sintaxă în dvs Dockerfile
. Nu puteți pune comenzi pe mai multe linii într-un Dockerfile
fără a scăpa de capătul liniei. Adică nu poți scrie asta:
ALERGA
yum -y instalează nginx-1.12.2 openssl --enablerepo=nginx &&
yum -y instalează https://centos7.iuscommunity.org/ius-release.rpm
Dar poți scrie asta:
RUN yum -y instalează nginx-1.12.2 openssl --enablerepo=nginx && yum -y instalează https://centos7.iuscommunity.org/ius-release.rpm
Sau poți scrie asta:
ALERGA \
yum -y instalează nginx-1.12.2 openssl --enablerepo=nginx && \
yum -y instalează https://centos7.iuscommunity.org/ius-release.rpm
Aici, folosim \
caracter pentru a scăpa de la sfârșitul liniei, permițându-ne să răspândim o comandă pe mai multe linii fizice din nostru Dockerfile
.
Deci primul tău ALERGA
comanda ar trebui probabil să arate astfel:
ALERGA \
yum -y instalează nginx-1.12.2 openssl --enablerepo=nginx && \
yum -y instalează https://centos7.iuscommunity.org/ius-release.rpm && \
yum -y instalează https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release -1.0-14.ius.centos7.noarch.rpm && \
yum -y instalează \
php71u-fpm \
php71u-cli \
php71u-mysqlnd \
php71u-soap \
php71u-xml \
php71u-zip \
php71u-json \
php71u-mcrypt \
php71u-mbstring \
php71u-zip \
php71u-gd \
--enablerepo=ius && yum clean all