728x90
centos 8 systemctl 실행(/sbin/init)
도커 컨테이너 내에서는 systemctl 명령이 원래의 기대대로 작동하지 않습니다. 이는 컨테이너 내에서 systemd init 시스템이 실행되지 않기 때문입니다. 그러나 CentOS 8 도커 컨테이너 내에서도 대체 방법을 사용하여 서비스를 관리할 수 있습니다.
CentOS 8 도커 컨테이너 내에서 서비스를 시작, 중지, 또는 재시작하기 위해 service 명령을 사용하거나 서비스의 init 스크립트를 직접 조작할 수 있습니다.
테스트 환경
$ cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
도커 컨테이너 실행
docker run -it -d --cap-add=SYS_ADMIN --privileged --name centos8 centos:8 /sbin/init
도커 컨테이너 목록 확인
docker ps -a
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8ec200c2c626 centos:8 "/sbin/init" 14 seconds ago Up 10 seconds centos8
실행 중인 도커 컨테이너 안으로 진입
- 컨테이너 안에서 'systemclt' 명령 실행
docker exec -it centos8 bash
systemctl status
$ docker exec -it centos8 bash
[root@8ec200c2c626 /]# systemctl status
● 8ec200c2c626
State: running
Jobs: 0 queued
Failed: 0 units
Since: Wed 2023-01-18 00:17:23 UTC; 1min 0s ago
CGroup: /docker/8ec200c2c626b5f67898a0d4e6ff358bcfbdd12ef43ad026ed65b9297b7b7b85
├─system.slice
│ ├─dbus.service
│ │ └─48 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
│ ├─systemd-udevd.service
│ │ └─34 /usr/lib/systemd/systemd-udevd
│ └─systemd-journald.service
│ └─21 /usr/lib/systemd/systemd-journald
└─init.scope
└─1 /sbin/init
728x90
'리눅스' 카테고리의 다른 글
[draft] systemctl 명령을 찾을 수 없음 (0) | 2022.05.03 |
---|---|
[리눅스] 도커 이미지(운영체제 이미지) (0) | 2022.05.03 |
우분투에서 APT 패키지 매니저를 사용하여 APM 스택을 설치하는 방법 (0) | 2022.04.28 |
Docker 컨테이너 내에서 systemd 또는 /sbin/init을 사용하는 방법 (0) | 2022.04.28 |
우분투에 OpenSSL을 설치하는 방법(openssl-1.1.1) (0) | 2022.04.28 |