내가 달리기에 로그인할 수 있는 동안컨테이너아래의 Asterisk 콘솔에 들어가도 서비스 상태를 볼 수 없는 것 같습니다 Asterisk
.
ubuntu@ip-172-31-14-19:~$
ubuntu@ip-172-31-14-19:~$ sudo docker exec -it 115ac4e433ff bin/bash
bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory
bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
bash: warning: setlocale: LC_MESSAGES: cannot change locale (en_US.UTF-8): No such file or directory
bash: warning: setlocale: LC_NUMERIC: cannot change locale (en_US.UTF-8): No such file or directory
bash: warning: setlocale: LC_TIME: cannot change locale (en_US.UTF-8): No such file or directory
[root@ip-172-31-14-19 /]#
[root@ip-172-31-14-19 /]# whoami
root
[root@ip-172-31-14-19 /]#
[root@ip-172-31-14-19 /]# service asterisk status
Redirecting to /bin/systemctl status asterisk.service
Failed to get D-Bus connection: Operation not permitted
[root@ip-172-31-14-19 /]#
[root@ip-172-31-14-19 /]# asterisk -rvvv
Asterisk certified/11.6-cert17, Copyright (C) 1999 - 2013 Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk certified/11.6-cert17 currently running on ip-172-31-14-19 (pid = 1)
ip-172-31-14-19*CLI>
ip-172-31-14-19*CLI>
으로 실행해 보았지만 exec
그 이상은문제컨테이너가 어떻게 만들어졌는지 알아볼까요?
도커에서컨테이너AWS에서.
답변1
이는 SystemD를 사용하여 서비스를 제어하는 모든 운영 체제에서 발생합니다. "systemctl" 명령은 많은 작업을 수행하지 않습니다. 단지 d-bus를 사용하여 systemd 데몬과 통신합니다. 하지만 도커 컨테이너 안에는 그런 것이 없습니다.
systemctl을 다음과 같이 재정의하면 이 오류를 방지할 수 있습니다. https://github.com/gdraheim/docker-systemctl-replacementsystemd에 요청하는 대신 서비스의 ExecStart / ExceStop 부분을 직접 실행합니다.