Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use tini to start model server #400

Merged
merged 1 commit into from
Mar 9, 2018
Merged

Conversation

yupbank
Copy link
Member

@yupbank yupbank commented Mar 9, 2018

Even though model server itself can be the entry point itself but then run with PID 1 would make the server not responding to SIGINT or SIGTERM

which is problematic during k8s rolling up new version

Using Tini has several benefits:

  • It protects you from software that accidentally creates zombie processes,
    which can (over time!) starve your entire system for PIDs (and make it
    unusable).
  • It ensures that the default signal handlers work for the software you run
    in your Docker image. For example, with Tini, SIGTERM properly terminates
    your process even if you didn't explicitly install a signal handler for it.
  • It does so completely transparently! Docker images that work without Tini
    will work with Tini without any changes.

This change is Reviewable

@yupbank
Copy link
Member Author

yupbank commented Mar 9, 2018

/assign @jlewi @lluunn

@lluunn
Copy link
Contributor

lluunn commented Mar 9, 2018

Sorry I am not familiar with tini.
Could you update some description about what's tini and what does it do?
Also, is it common to use that in k8s?

Thanks

@yupbank
Copy link
Member Author

yupbank commented Mar 9, 2018

sure.. i have updated..

i think it's common, like we use it for nginx when deploy with docker

@lluunn
Copy link
Contributor

lluunn commented Mar 9, 2018

Thanks! I can see we use tini in jupyter image as well.
/lgtm

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: lluunn

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants