0

I tried to build image from Dockerfile. For this purposes I used this dockerhub image: https://hub.docker.com/r/openshift/origin-haproxy-router

My Dockerfile:

FROM openshift/origin-haproxy-router
RUN INSTALL_PKGS="haproxy18 rsyslog" && \
                  yum install -y $INSTALL_PKGS && \
                  yum clean all && \
                  rpm -V $INSTALL_PKGS && \
                  mkdir -p /var/lib/haproxy/router/{certs,cacerts,whitelists} && \
                  mkdir -p /var/lib/haproxy/{conf/.tmp,run,bin,log} && \
                  touch /var/lib/haproxy/conf/{{os_http_be,os_edge_reencrypt_be,os_tcp_be,os_sni_passthrough,os_route_http_redirect,cert_config,os_wildcard_domain}.map,haproxy.config} && \
                  setcap 'cap_net_bind_service=ep' /usr/sbin/haproxy && \
                  chown -R :0 /var/lib/haproxy && \
                  chmod -R g+w /var/lib/haproxy
COPY images/router/haproxy/* /var/lib/haproxy/
LABEL io.k8s.display-name="OpenShift HAProxy Router" \
  io.k8s.description="This component offers ingress to an OpenShift cluster via Ingress and Route rules." \
  io.openshift.tags="openshift,router,haproxy"
USER root
EXPOSE 80 443
WORKDIR /var/lib/haproxy/conf
ENV TEMPLATE_FILE=/var/lib/haproxy/conf/haproxy-config.template \
RELOAD_SCRIPT=/var/lib/haproxy/reload-haproxy
ENTRYPOINT ["/usr/bin/openshift-router"]

After I tried to run command inside folder with dockerfile:

sudo docker build -t os-router .

I got next result:

 ovl: Error while doing RPMdb copy-up:
 [Errno 13] Permission denied: '/var/lib/rpm/Conflictname'
 You need to be root to perform this command.

How can I solve this error?

1 Answers1

0

put USER root in your dockerfile

Saurabh Chandra Patel
  • 12,712
  • 6
  • 88
  • 78