Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-6300

PID1 of docker images does not behave correctly

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 1.1.4, 1.2.0
    • 1.2.2, 1.3.0
    • flink-docker
    • None
    • all

    Description

      When running the task manager and job manager docker images the process with PID1 is a bash script.

      There is a problem in using bash as the PID1 process in a docker
      container as docker sends SIGTERM, but bash doesn't send this to its
      child processes.

      This means for example that if a container was ever killed and a child
      process had a file open then the file may get corrupted.

      It's covered in more detail in a blog post here:
      https://blog.phusion.nl/2015/01/20/docker-and-the-pid-1-zombie-reaping-problem/

      From the mailing list (Nico):
      "Some background:
      Although docker-entrypoint.sh uses "exec" to run succeeding bash scripts for
      jobmanager.sh and taskmanager.sh, respectively, and thus replaces itself with
      these scripts, they do not seem to use exec themselves for foreground
      processes and thus may run into the problem you described.
      I may be wrong, but I did not find any other fallback to handle this in the
      current code base."

      Potentially useful information:

      dockerd version 1.1.3 added an init flag:

      "You can use the --init flag to indicate that an init process should be used as the PID 1 in the container. Specifying an init process ensures the usual responsibilities of an init system, such as reaping zombie processes, are performed inside the created container."
      from:
      https://docs.docker.com/engine/reference/run/#restart-policies---restart

      perhaps the fix could be just to update readme for these images to specify to use this flag.

      Attachments

        Issue Links

          Activity

            People

              plucas Patrick Lucas
              ksharp kathleen sharp
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: