diff --git a/roles/build/files/haproxysupervisord.conf b/roles/build/files/haproxysupervisord.conf
new file mode 100644
index 0000000000000000000000000000000000000000..2738cf2d75e4646aafc687fb855ded53414594c0
--- /dev/null
+++ b/roles/build/files/haproxysupervisord.conf
@@ -0,0 +1,44 @@
+[unix_http_server]
+file=/tmp/supervisor.sock
+
+[supervisord]
+pidfile=/tmp/supervisord.pid
+nodaemon=true
+logfile=/var/log/supervisor/supervisord.log
+logfile_maxbytes=10MB
+logfile_backups=10
+loglevel=info
+childlogdir=/var/log/supervisor/
+
+[rpcinterface:supervisor]
+supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
+
+[supervisorctl]
+serverurl=unix:///tmp/supervisor.sock
+
+[program:haproxy]
+directory=/root
+user=root
+group=root
+command=/bin/bash -c '/usr/local/sbin/haproxy -f /usr/local/etc/haproxy/haproxy.cfg'
+autostart=false
+autorestart=true
+logfile_maxbytes=10MB
+stdout_logfile_backups = 0
+stderr_logfile_backups = 0
+stderr_logfile = /var/log/supervisor/haproxy_stderr.log
+stdout_logfile = /var/log/supervisor/haproxy_stdout.log
+
+
+[program:filebeat]
+directory=/opt/filebeat
+user=root
+group=root
+command=/bin/bash -c '/opt/filebeat/filebeat -c /opt/filebeat/filebeat.yml'
+autostart=false
+autorestart=true
+logfile_maxbytes=10MB
+stdout_logfile_backups = 0
+stderr_logfile_backups = 0
+stderr_logfile = /var/log/supervisor/filebeat_stderr.log
+stdout_logfile = /var/log/supervisor/filebeat_stdout.log
diff --git a/roles/build/templates/cortex/Dockerfile.j2 b/roles/build/templates/cortex/Dockerfile.j2
index 68ac1ed5d577913d92592a8fb236dcc896265b8a..76c60662c05675b61f7acfbde36ad46aa1351c44 100644
--- a/roles/build/templates/cortex/Dockerfile.j2
+++ b/roles/build/templates/cortex/Dockerfile.j2
@@ -1,9 +1,6 @@
 FROM {{repo}}/openjdk:{{version}}{{suffix}}
 
 USER root
-#COPY thehive.repo /etc/yum.repos.d/thehive.repo
-#COPY supervisord.conf /etc/supervisord.conf
-#COPY start.sh /start.sh
 RUN echo "[thehive-project]" > /etc/yum.repos.d/thehive.repo && \
     echo "enabled=1" >> /etc/yum.repos.d/thehive.repo && \
     echo "priority=1" >> /etc/yum.repos.d/thehive.repo && \
@@ -29,5 +26,3 @@ RUN echo "[thehive-project]" > /etc/yum.repos.d/thehive.repo && \
 EXPOSE 9001
 COPY cortexsupervisord.conf /etc/supervisord.conf
 ENTRYPOINT ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"]
-#USER cortex
-# ENTRYPOINT ["/start.sh"]
diff --git a/roles/build/templates/haproxy/Dockerfile.j2 b/roles/build/templates/haproxy/Dockerfile.j2
index d9f84c4c3ec60e5593ab4a3ccffee1660585260e..a4d5e94aa6390579a41a62affb7b1adf4eea0799 100644
--- a/roles/build/templates/haproxy/Dockerfile.j2
+++ b/roles/build/templates/haproxy/Dockerfile.j2
@@ -24,6 +24,7 @@ RUN \
   iptables \
   pcre2-devel \
   daemonize \
+  supervisor \
   pth-devel && \
   `# Install newest openssl...` \
   wget -O /tmp/openssl.tgz https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz && \
@@ -62,10 +63,5 @@ RUN \
   && cp -R /usr/src/haproxy/examples/errorfiles /usr/local/etc/haproxy/errors \
   && rm -rf /usr/src/haproxy 
 
-ENTRYPOINT ["/bin/bash"]
-
-# https://www.haproxy.org/download/1.8/doc/management.txt
-# "4. Stopping and restarting HAProxy"
-# "when the SIGTERM signal is sent to the haproxy process, it immediately quits and all established connections are closed"
-# "graceful stop is triggered when the SIGUSR1 signal is sent to the haproxy process"
-STOPSIGNAL SIGUSR1
+COPY haproxysupervisord.conf /etc/supervisord.conf
+ENTRYPOINT ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"]
diff --git a/roles/docker/tasks/haproxy.yml b/roles/docker/tasks/haproxy.yml
index 155398aa241b3526848e47f096ff4019c69aa004..b0180761f4f3c18982f21d9f5b8307066146daed 100644
--- a/roles/docker/tasks/haproxy.yml
+++ b/roles/docker/tasks/haproxy.yml
@@ -19,7 +19,6 @@
       - "6000-6099:6000-6099"
       - "9000:9000"
       - "9001:9001"
-    entrypoint: "/bin/bash"
     interactive: "yes"
   tags:
     - start
diff --git a/roles/haproxy/tasks/main.yml b/roles/haproxy/tasks/main.yml
index dc7055649ff3829f8c2f7f06447a1d5795311cee..73debe19f69d0a0281fde3029ea80d2008dd26ba 100644
--- a/roles/haproxy/tasks/main.yml
+++ b/roles/haproxy/tasks/main.yml
@@ -58,12 +58,17 @@
     - start
 
 - name: Start haproxy
-  shell: "daemonize -c / -p /haproxy.pid /usr/local/sbin/haproxy -f /usr/local/etc/haproxy/haproxy.cfg"
+  shell: "supervisorctl start haproxy"
+  tags:
+    - start
+
+- name: Set Autostart for supervisord's services
+  shell: "sed -i 's/autostart=false/autostart=true/g' /etc/supervisord.conf"
   tags:
     - start
 
 - name: Stop haproxy
-  command: "pkill -SIGTERM -F /haproxy.pid"
+  command: "supervisorctl stop haproxy"
   tags:
     - stop