2

While doing yum install from docker file getting the following error message in Centos 7

docker build -f DockerFile .

Sending build context to Docker daemon 1.252 MB
Step 1 : FROM centos:7
 ---> 778a53015523
Step 2 : RUN rpm -iUvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm # For python-pip
 ---> Using cache
 ---> 324c446a8ded
Step 3 : RUN rpm --import http://repo.saltstack.com/yum/redhat/7/x86_64/latest/SALTSTACK-GPG-KEY.pub
 ---> Using cache
 ---> bdab0cf0e83d
Step 4 : RUN yum install -y python-pip
 ---> Running in 092314f6bd8f
Loaded plugins: fastestmirror, ovl


 One of the configured repositories failed (Unknown),
 and yum doesn't have enough cached data to continue. At this point the only
 safe thing yum can do is fail. There are a few ways to work "fix" this:

     1. Contact the upstream for the repository and get them to fix the problem.

     2. Reconfigure the baseurl/etc. for the repository, to point to a working
        upstream. This is most often useful if you are using a newer
        distribution release than is supported by the repository (and the
        packages for the previous distribution release still work).

     3. Disable the repository, so yum won't use it by default. Yum will then
        just ignore the repository until you permanently enable it again or use
        --enablerepo for temporary usage:

            yum-config-manager --disable <repoid>

     4. Configure the failing repository to be skipped, if it is unavailable.
        Note that yum will try to contact the repo. when it runs most commands,
        so will have to try and fail each time (and thus. yum will be be much
        slower). If it is a very temporary problem though, this is often a nice
        compromise:

            yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true

Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again
The command '/bin/sh -c yum install -y python-pip' returned a non-zero code: 1

Our Servers are behind proxy servers. So proxy entries are added in the file /etc/sysconfig/docker

 HTTP_PROXY=< PROXY_IP >:80/
 HTTPS_PROXY=< PROXY_IP >:80/

Also added the Env File in docker.service

[Service]
    EnvironmentFile=-/etc/sysconfig/docker

Any help would be greatly appreciated.

cchapman
  • 3,269
  • 10
  • 50
  • 68
Safin
  • 21
  • 1
  • 3
  • Possible duplicate of [Cannot download Docker images behind a proxy](http://stackoverflow.com/questions/23111631/cannot-download-docker-images-behind-a-proxy) – Dauren Akilbekov Apr 05 '16 at 06:21

2 Answers2

0

You may come across this message/error, after installing epel-release. The quick fix is to update your SSL certificates:

yum -y upgrade ca-certificates

Chances are the above error may also occur while certificate update, if so just disable the epel repo i.e. use the following command:

yum -y upgrade ca-certificates --disablerepo=epel  

Once the certificates will be updated, you'll be able to use yum normally, even the epel repo will work fine.


Note: use sudo if you're not the root user.

Nabeel Ahmed
  • 18,328
  • 4
  • 58
  • 63
0

I had a similar problem, and When I tried to hit the fedora URL:

$ curl mirrors.fedoraproject.org

Could not resolve host: mirrors.fedoraproject.org; Unknown error

My temporary solution (while there was maybe some issue with fedoraproject.org) was to disable the mirror, and use another host:

$ sed -i -e "s/^metalink/#metalink/g" \
-e "s/download.fedoraproject.org/pub/mirror.bytemark.co.uk/fedora/g" \
/etc/yum.repos.d/epel.repo

Chris2048
  • 511
  • 5
  • 19