Score:0

คำแนะนำที่ไม่รู้จัก: YUM ขณะสร้างอิมเมจ Docker

ธง il

ไฟล์นักเทียบท่าของฉัน:

จากโฮสต์ระยะไกล

สำเนา ./conf/nginx.repo /etc/yum.repos.d/nginx.repo

วิ่ง
  yum -y ติดตั้ง nginx-1.12.2 openssl --enablerepo=nginx &&
  ยำ -y ติดตั้ง https://centos7.iuscommunity.org/ius-release.rpm &&
  ยำ -y ติดตั้ง https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release -1.0-14.ius.centos7.noarch.rpm &&
  yum -y ติดตั้ง
   php71u-fpm
   php71u-cli
   php71u-mysqlnd
   php71u-สบู่
   php71u-xml
   php71u-zip
   php71u-json
   php71u-mcrypt
   php71u-mbstring
   php71u-zip
   php71u-gd
    --enablerepo=ius && yum ล้างทั้งหมด

เปิดเผย 80 443

ปริมาณ /war/www/html /var/log/nginx /var/log/php-fpm /var/lib/php-fpm

สำเนา ./conf/nginx.conf /etc/nginx/conf.d/default.conf

คัดลอก ./bin/start.sh /start.sh

RUN chmod +x /start.sh'

ฉันกำลังพยายามติดตั้งแพ็คเกจ PHP โดยเรียกใช้ไฟล์นักเทียบท่าเพื่อสร้างอิมเมจ

แต่ในขณะที่เรียกใช้ Docker-compose ได้รับข้อผิดพลาดด้านล่าง:

กำลังสร้าง remote_host
กำลังส่งบริบทการสร้างไปยัง Docker daemon 5.632kB
ขั้นตอนที่ 1/8 : จาก centos
 ---> 5d0da3dc9764
ขั้นตอนที่ 2/8: RUN yum -y ติดตั้ง opensh-server
 ---> การใช้แคช
 ---> f35cb2e631df
ขั้นตอนที่ 3/8 : RUN useradd remote_user && echo "remote_user:1234" | chpasswd && mkdir /home/remote_user/.ssh && chmod 700 /home/remote_user/.ssh
 ---> การใช้แคช
 ---> cd43cbb20a17
ขั้นตอนที่ 4/8 : คัดลอก remote-key.pub /home/remote_user/.ssh/authorized_keys
 ---> การใช้แคช
 ---> 265df27dac01
ขั้นตอนที่ 5/8: RUN chown remote_user:remote_user -R /home/remote_user/.ssh/ && chmod 700 /home/remote_user/.ssh/authorized_keys
 ---> การใช้แคช
 ---> ede2d6bc1ca1
ขั้นตอนที่ 6/8 : RUN ssh-keygen -A
 ---> การใช้แคช
 ---> d2285793a0a0
ขั้นตอนที่ 7/8 : RUN yum -y ติดตั้ง mysql
 ---> การใช้แคช
 ---> 5e32bcb6c255
ขั้นตอนที่ 8/8 : CMD /usr/sbin/sshd -D
 ---> การใช้แคช
 ---> 96a4c1781a8f
สร้างสำเร็จแล้ว 96a4c1781a8f
ติดแท็กโฮสต์ระยะไกลสำเร็จ: ล่าสุด
สร้างเว็บ
กำลังส่งบริบทบิลด์ไปยัง Docker daemon 8.192kB
การตอบสนองข้อผิดพลาดจาก daemon: dockerfile parse error บรรทัดที่ 6: คำสั่งที่ไม่รู้จัก: YUM
ข้อผิดพลาด: บริการ 'เว็บ' ล้มเหลวในการสร้าง : การสร้างล้มเหลว
Massimo avatar
ng flag
ใช้เส้นทางแบบเต็มสำหรับ `yum`
Score:2
ธง pt

คุณมีข้อผิดพลาดทางไวยากรณ์ในไฟล์ ไฟล์นักเทียบท่า. คุณไม่สามารถใส่คำสั่งข้ามหลายบรรทัดในไฟล์ ไฟล์นักเทียบท่า โดยไม่ต้องหนีจากจุดสิ้นสุดของบรรทัด นั่นคือคุณไม่สามารถเขียนสิ่งนี้:

วิ่ง
  yum -y ติดตั้ง nginx-1.12.2 openssl --enablerepo=nginx &&
  ยำ -y ติดตั้ง https://centos7.iuscommunity.org/ius-release.rpm

แต่คุณสามารถเขียนสิ่งนี้:

RUN yum -y ติดตั้ง nginx-1.12.2 openssl --enablerepo=nginx && yum -y ติดตั้ง https://centos7.iuscommunity.org/ius-release.rpm

หรือคุณสามารถเขียนสิ่งนี้:

วิ่ง \
  yum -y ติดตั้ง nginx-1.12.2 openssl --enablerepo=nginx && \
  ยำ -y ติดตั้ง https://centos7.iuscommunity.org/ius-release.rpm

ที่นี่เราใช้ \ อักขระเพื่อหนีจากจุดสิ้นสุดของบรรทัด ทำให้เราสามารถกระจายคำสั่งข้ามบรรทัดที่มีอยู่จริงในของเรา ไฟล์นักเทียบท่า.

ดังนั้นครั้งแรกของคุณ วิ่ง คำสั่งควรมีลักษณะดังนี้:

วิ่ง \
  yum -y ติดตั้ง nginx-1.12.2 openssl --enablerepo=nginx && \
  ยำ -y ติดตั้ง https://centos7.iuscommunity.org/ius-release.rpm && \
  yum -y ติดตั้ง https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release -1.0-14.ius.centos7.noarch.rpm && \
  ยำ -y ติดตั้ง \
   php71u-fpm \
   php71u-cli \
   php71u-mysqlnd \
   php71u-สบู่ \
   php71u-xml \
   php71u-zip \
   php71u-json \
   php71u-mcrypt \
   php71u-mbstring \
   php71u-zip \
   php71u-gd \
    --enablerepo=ius && yum ล้างทั้งหมด

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา