title: Running Haproxy in docker container
body: <p>I am trying to create a Docker container from haproxy image but I run in to some problems. I followed the tutorial from <a href="https://hub.docker.com/_/haproxy" rel="nofollow noreferrer">Dockerhub</a> where it says to create a Dockerfile containing <br> </p>
  
  <pre><code>FROM haproxy:1.7  
  COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
  </code></pre>
  
  <p>I then run <code>docker build -t my-haproxy .</code> And everything look good, but when i run <code>docker run -it --rm --name haproxy-syntax-check my-haproxy haproxy -c -f /usr/local/etc/haproxy/haproxy.cfg</code> to test the config file i get the following error`s </p>
  
  <pre><code>[ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:7] : cannot find user id for 'haproxy' (0:Success)
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:8] : cannot find group id for 'haproxy' (0:Success)
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:32] : error opening file &lt;/etc/haproxy/errors/400.http&gt; for custom error message &lt;400&gt;.
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:33] : error opening file &lt;/etc/haproxy/errors/403.http&gt; for custom error message &lt;403&gt;.
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:34] : error opening file &lt;/etc/haproxy/errors/408.http&gt; for custom error message &lt;408&gt;.
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:35] : error opening file &lt;/etc/haproxy/errors/500.http&gt; for custom error message &lt;500&gt;.
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:36] : error opening file &lt;/etc/haproxy/errors/502.http&gt; for custom error message &lt;502&gt;.
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:37] : error opening file &lt;/etc/haproxy/errors/503.http&gt; for custom error message &lt;503&gt;.
  [ALERT] 114/152637 (1) : parsing [/usr/local/etc/haproxy/haproxy.cfg:38] : error opening file &lt;/etc/haproxy/errors/504.http&gt; for custom error message &lt;504&gt;.
  [ALERT] 114/152637 (1) : Error(s) found in configuration file : /usr/local/etc/haproxy/haproxy.cfg
  [ALERT] 114/152637 (1) : Fatal errors found in configuration.
  </code></pre>
  
  <p>I have a group and user called haproxy. I can still create the container but it does not work. Here is my haproxy.cfg file</p>
  
  <pre><code>global
          log /dev/log    local0
          log /dev/log    local1 notice
          chroot /var/lib/haproxy
          stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
          stats timeout 30s
          user haproxy
          group haproxy
          daemon
  
          # Default SSL material locations
          ca-base /etc/ssl/certs
          crt-base /etc/ssl/private
  
          # Default ciphers to use on SSL-enabled listening sockets.
          # For more information, see ciphers(1SSL). This list is from:
          #  https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/
          # An alternative list with additional directives can be obtained from
          #  https://mozilla.github.io/server-side-tls/ssl-config-generator/?server=haproxy
          ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
          ssl-default-bind-options no-sslv3
  
  
  
  defaults
          log     global
          mode    http
          option  httplog
          option  dontlognull
          timeout connect 5000
          timeout client  50000
          timeout server  50000
          errorfile 400 /etc/haproxy/errors/400.http
          errorfile 403 /etc/haproxy/errors/403.http
          errorfile 408 /etc/haproxy/errors/408.http
          errorfile 500 /etc/haproxy/errors/500.http
          errorfile 502 /etc/haproxy/errors/502.http
          errorfile 503 /etc/haproxy/errors/503.http
          errorfile 504 /etc/haproxy/errors/504.http
  
  
  frontend myfrontend
    bind *:80
    mode http
    default_backend mybackend
  
  backend mybackend
    mode http
    balance roundrobin
    option httpchk HEAD / # checks against the index page
    server web1 172.17.0.2:80 check weight 10
    server web2 172.17.0.3:80 check weight 20
  
  </code></pre>