Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| docker_notes:init [2024-08-24 Sat wk34 22:13] – [docker builtin basic init] baumkp | docker_notes:init [2025-09-26 Fri wk39 19:37] (current) – [References] baumkp | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | {{tag> | + | {{tag> |
| ======Docker init Systems====== | ======Docker init Systems====== | ||
| - | There are a number of init systems used on docker containers, many are the defaults that ship with the standard Linux distributions, | + | There are a number of init systems used on docker containers, many are the defaults that ship with the standard Linux distributions, |
| + | ++++tldr; | ||
| + | There is a lot of argument in the init world, SystemD seems to have taken over the init system in most " | ||
| + | Some Unix (Linux focus) init systems: | ||
| + | *sysv (System V) | ||
| + | *[[https:// | ||
| + | *[[https:// | ||
| + | *[[https:// | ||
| + | *[[https:// | ||
| + | *[[http:// | ||
| + | *[[https:// | ||
| + | *And arguably not a full init systems: | ||
| + | *[[https:// | ||
| + | *[[http:// | ||
| + | ***launchd** is the process control system system used by Apple Max OS X, perhaps inspiration for systemd? | ||
| + | Some references (just do an online search....): | ||
| + | *[[https:// | ||
| + | *[[https:// | ||
| When creating my own imaged I have generally is the S6-RC init system, most if not all have been built on the latest Apline Linux as base image. Some examples: | When creating my own imaged I have generally is the S6-RC init system, most if not all have been built on the latest Apline Linux as base image. Some examples: | ||
| *[[https:// | *[[https:// | ||
| *[[https:// | *[[https:// | ||
| *[[https:// | *[[https:// | ||
| - | *mailserver | + | *mailserver |
| *[[https:// | *[[https:// | ||
| *[[https:// | *[[https:// | ||
| Line 16: | Line 32: | ||
| There are other init systems out there that I have not looked into, including a number of legacy init systems that are no longer supported. | There are other init systems out there that I have not looked into, including a number of legacy init systems that are no longer supported. | ||
| + | ++++ | ||
| =====s6 supervision rc system===== | =====s6 supervision rc system===== | ||
| I decided to build this container image based upon Alpine Linux using the [[https:// | I decided to build this container image based upon Alpine Linux using the [[https:// | ||
| Line 77: | Line 93: | ||
| In the docker run command the '' | In the docker run command the '' | ||
| + | In docker compose add the directive '' | ||
| + | ++++docker-compose.yml snippet| | ||
| + | < | ||
| + | ntfy: | ||
| + | image: binwiederhier/ | ||
| + | init: true | ||
| + | container_name: | ||
| + | ++++ | ||
| *[[https:// | *[[https:// | ||
| *[[https:// | *[[https:// | ||
| *[[https:// | *[[https:// | ||
| + | |||
| + | =====alias in S6 init===== | ||
| + | I like the alias command to change some default CLI command flags, in particular ls => ls -la, which I normally call ll. I had no success using the alias command in S6 init scripts. I found the following solution, by using the s6 pre_start_script to add a link '' | ||
| + | |||
| + | <code bash># | ||
| + | /bin/ln -s / | ||
| + | |||
| + | Where '' | ||
| + | <code bash># | ||
| + | exec ls -la " | ||
| =====References===== | =====References===== | ||
| - | *[[https:// | + | *[[https:// |
| *[[https:// | *[[https:// | ||
| *[[https:// | *[[https:// | ||