CentOS 7을 Docker에서 사용할 때, systemd는 기본 장착이 아니다.
– systemd를 사용하려면 dockerfile에 관련 내용을 넣거나,
– systemd가 포함된 이미지를 받아야 한다.
CentOS + systemd를 사용하는 방법은 아래 두 문서에 나와 있다.
– https://hub.docker.com/_/centos
– https://github.com/CentOS/CentOS-Dockerfiles/tree/master/systemd/centos7
며칠을 틈틈이 시도했는데 실패했다.
– 검색해서 방법이 나오는 건 된다는 건데,
– 어디 가서 개발 좀 했다고 이야기 하면 안되겠다.
그런데 왜 systemd를 사용하려고 하느냐?
– 개발, 실습 환경으로 docker container를 여럿 띄우니,
– 개별 container 마다 창 2, 3개씩 띄워서 로그보고, 명령어 날리고 한다.
– 그러나 보니 창이 많아 정신이 없다.
– superputty가 생각났고, ssh가 필요했다.
자바로 만든 프로그램인데 굳이 CentOS를 써야하나?
– 생각해 보니 CentOS에서만 돌릴 이유는 없잖아.
– ubuntu로 바꿨다.
– 상쾌하다.
참고1. Docker 관점에서 보자면
– systemd는 필요 없는 기능이다.
– 개발환경에서는 필요할 수도 있다.
참고2. ubuntu dockerfile
|
1
2
3
4
5
6
|
FROM ubuntu:20.04
RUN apt update
RUN apt install –y init systemd openssh–server openssh–client vim
xxd net–tools curl lsof telnet
openjdk–8–jdk language–pack–ko subversion locales
CMD [“/sbin/init”]
|
cs |