Docker containers differ fundamentally from traditional Linux systems in process management. While Linux systems have a complete init system (PID 1) managing all processes, Docker containers run with a single main process that must handle all process management duties.
Direct Background Process:
CMD ["./daemon", "&"]
Init System:
CMD ["tini", "--", "./daemon"]
Process Supervisor:
CMD ["supervisor", "./daemon"]
in short:
Simple daemons → lightweight init system
Complex daemons → process supervisor
Critical services → full monitoring and health checks