Red Hat Training
A Red Hat training course is available for RHEL 8
8.4. Containers de partida automática usando systemd
Você pode controlar o estado do sistema e do gerente de serviços do sistema usando o comando systemctl. Esta seção mostra o procedimento geral sobre como habilitar, iniciar, parar o serviço como um usuário não-root. Para instalar o serviço como um usuário root, omitir a opção --user.
Procedimento
Configuração do gerente do sistema de recarga:
# systemctl -- daemon-reload do usuário
Habilite o serviço
container.servicee inicie-o no momento da inicialização:# systemctl -- usuário habilita container.service
Para iniciar o serviço imediatamente:
# systemctl -- usuário iniciar container.service
Verifique o status do serviço:
$ systemctl --user status container.service ● container.service - Podman container.service Loaded: loaded (/home/user/.config/systemd/user/container.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2020-09-16 11:56:57 CEST; 8s ago Docs: man:podman-generate-systemd(1) Process: 80602 ExecStart=/usr/bin/podman run --conmon-pidfile //run/user/1000/container.service-pid --cidfile //run/user/1000/container.service-cid -d ubi8-minimal:> Process: 80601 ExecStartPre=/usr/bin/rm -f //run/user/1000/container.service-pid //run/user/1000/container.service-cid (code=exited, status=0/SUCCESS) Main PID: 80617 (conmon) CGroup: /user.slice/user-1000.slice/user@1000.service/container.service ├─ 2870 /usr/bin/podman ├─80612 /usr/bin/slirp4netns --disable-host-loopback --mtu 65520 --enable-sandbox --enable-seccomp -c -e 3 -r 4 --netns-type=path /run/user/1000/netns/cni-> ├─80614 /usr/bin/fuse-overlayfs -o lowerdir=/home/user/.local/share/containers/storage/overlay/l/YJSPGXM2OCDZPLMLXJOW3NRF6Q:/home/user/.local/share/contain> ├─80617 /usr/bin/conmon --api-version 1 -c cbc75d6031508dfd3d78a74a03e4ace1732b51223e72a2ce4aa3bfe10a78e4fa -u cbc75d6031508dfd3d78a74a03e4ace1732b51223e72> └─cbc75d6031508dfd3d78a74a03e4ace1732b51223e72a2ce4aa3bfe10a78e4fa └─80626 /usr/bin/coreutils --coreutils-prog-shebang=sleep /usr/bin/sleep 1dVocê pode verificar se o serviço está habilitado usando o comando
systemctl is-enabled container.service.
Etapas de verificação
Liste os contêineres que estão funcionando ou já saíram:
# podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f20988d59920 registry.access.redhat.com/ubi8-minimal:latest top 12 seconds ago Up 11 seconds ago funny_zhukovsky
Para parar container.service, entre:
# systemctl -- contêiner.serviço de parada do usuário
Recursos adicionais
-
Para mais informações sobre o comando
systemctl, digiteman systemctl. - Para mais informações, veja o artigo de Valentin Rothberg " Correndo containers com Podman e serviços de sistema compartilhável ".
- Para saber mais sobre a configuração de serviços com o systemd, consulte o capítulo Configurando configurações básicas do sistema chamado Gerenciando serviços com o systemd.