web-dev-qa-db-fra.com

(LXD) Le conteneur LXC ne démarre pas les services automatiquement

Utiliser: Ubuntu Server 14.04 x64 LXD 2.0.0

J'ai plusieurs conteneurs (tous exécutant "Alpine-Edge") dans lesquels je lance lighttpd + mysql.

Le problème est que chaque fois que je redémarre les conteneurs, je dois redémarrer manuellement ces services car ils ne démarrent pas automatiquement.

Que dois-je faire pour résoudre ce problème?

UPDATE

La solution temporelle que j'utilise consiste à:

lxc exec Alpine-Edge service lighttpd start

depuis le système d'exploitation parent (dans un script d'initialisation). Mais je crois qu'il devrait y avoir un moyen de le faire automatiquement à l'intérieur du conteneur. Par conséquent, si je le redémarre manuellement (le conteneur), je n'ai pas à exécuter cette commande à chaque fois.

1
lepe

Alpine Linux utilise OpenRC pour son système init . Les commandes de base pour interagir avec elle sont

rc-update add <service> [runlevel]

ajoute service à la séquence d'initialisation (de la même manière que systemd's systemctl enable <service> dans Ubuntu 15.04 et suivantes);

rc-update del <service> [runlevel]

empêche le démarrage de service pendant l'initialisation du système (de la même façon que systemd's systemctl disable <service>);

rc-service <service> [start stop restart]

gère les services en cours d'exécution (de la même manière que systemctl [start stop restart] <service> de systemd, ou de manière équivalente /etc/init.d/service [start stop restart] qui fonctionne à la fois dans systemd et dans OpenRC).

Vous trouverez plus d’informations sur la page Alpine Wiki ci-dessus, ainsi qu’une feuille de triche pour la traduction OpenRC -systemd disponible ici .

1
Jonathan Y.