Skip to content
Snippets Groups Projects
Commit 6710bbeb authored by Jeffrey Zhang's avatar Jeffrey Zhang Committed by Jeffrey Zhang
Browse files

Use dumb-init to manage the pid 1 process

Normally, when you launch a Docker container, the process you're
executing becomes PID 1, giving it the quirks and responsibilities that
come with being the init system for the container.

There are two common issues this presents:

* In most cases, signals won't be handled properly.
* Orphaned zombie processes aren't properly reaped.

the dumb-init acting like a simple init system. It launches a single
process and then proxies all received signals to a session rooted at
that child process.

Closes-Bug: #1614509
Change-Id: I9d3d04648e151ddc7c6732b92ffd3b6c9fe467ec
parent 755d5172
No related branches found
No related tags found
No related merge requests found
...@@ -262,6 +262,8 @@ RUN touch /usr/local/bin/kolla_extend_start \ ...@@ -262,6 +262,8 @@ RUN touch /usr/local/bin/kolla_extend_start \
&& chmod 755 /usr/local/bin/kolla_start /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_set_configs \ && chmod 755 /usr/local/bin/kolla_start /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_set_configs \
&& chmod 440 /etc/sudoers \ && chmod 440 /etc/sudoers \
&& groupadd kolla \ && groupadd kolla \
&& rm -f /tmp/kolla_bashrc && rm -f /tmp/kolla_bashrc \
&& curl -sSL https://github.com/Yelp/dumb-init/releases/download/v1.1.3/dumb-init_1.1.3_amd64 -o /usr/local/bin/dumb-init \
&& chmod +x /usr/local/bin/dumb-init
CMD ["kolla_start"] CMD ["kolla_start"]
#!/bin/bash #!/usr/local/bin/dumb-init /bin/bash
set -o errexit set -o errexit
# Wait for the log socket # Wait for the log socket
......
...@@ -66,7 +66,7 @@ COPY ansible.cfg /home/ansible/.ansible.cfg ...@@ -66,7 +66,7 @@ COPY ansible.cfg /home/ansible/.ansible.cfg
COPY ansible_sudoers /etc/sudoers.d/ansible_sudoers COPY ansible_sudoers /etc/sudoers.d/ansible_sudoers
RUN chmod 440 /etc/sudoers.d/ansible_sudoers RUN chmod 440 /etc/sudoers.d/ansible_sudoers
CMD ["/bin/sleep", "infinity"] CMD ["/usr/local/bin/dumb-init", "/bin/sleep", "infinity"]
{% block kolla_toolbox_footer %}{% endblock %} {% block kolla_toolbox_footer %}{% endblock %}
{% block footer %}{% endblock %} {% block footer %}{% endblock %}
......
---
features:
- use dumb-init to manage the pid 1 process
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment