首页 > 解决方案 > 尝试使用 docker-compose 构建 Docker 映像时出现“无法找到匹配错误”

问题描述

我正在尝试构建一个包含 Nginx Web 服务器和 PHP 的 docker 映像。

我正在使用带有 centos 7 的虚拟机

这是我的 Dockerfile

FROM remote-host

COPY ./conf/nginx.repo /etc/yum.repos.d/nginx.repo

RUN yum -y update && \
    yum install -y epel-release && \
    yum -y install nginx openssl --enablerepo=nginx && \
    yum -y update &&  \
    yum -y install https://centos7.iuscommunity.org/ius-release.rpm --nobest --skip-broken && \
    yum -y install php71u-fpm php71u-cli && \
    yum clean all

EXPOSE 80 443

VOLUME /var/www/html /var/log/nginx /var/log/php-fpm /var/lib/php-fpm

COPY ./conf/nginx.conf /etc/nginx/conf.d/default.conf

COPY ./bin/start.sh /start.sh

RUN chmod +x /start.sh

CMD /start.sh

这是错误输出:

Problem: conflicting requests
  - nothing provides epel-release = 7 needed by ius-release-2-1.el7.ius.noarch
================================================================================
Skip  1 Package

Nothing to do.
Complete!
Last metadata expiration check: 0:00:22 ago on Fri Dec  6 23:07:40 2019.
**No match for argument: php71u-fpm
No match for argument: php71u-cli
Error: Unable to find a match**
ERROR: Service 'web' failed to build: The command '/bin/sh -c yum -y update &&     yum install -y epel-release &&     yum -y install nginx openssl --enablerepo=nginx &&     yum -y update &&      yum -y install https://centos7.iuscommunity.org/ius-release.rpm --nobest --skip-broken &&     yum -y install php71u-fpm php71u-cli &&     yum clean all' returned a non-zero code: 1

标签: dockerdocker-composecentos7

解决方案


该软件包系列php71u 已弃用,但可以通过将 repo 设置为“ius-archive”而不是“ius-release”来下载。同样地:

yum --enablerepo=ius-archive install php71u-fpm

推荐阅读