본문 바로가기

hololo/DOCKER

2] Docker 설치(1)

1. root권한 변경

docker daemon은 root권한으로 돌아가고 있기 때문에, root권한으로만 실행할 수 있다.

그래서 docker명령어를 적을 경우,
1) 명령어 앞에 sudo를 붙인다.
2) docker그룹에 유저를 추가해준다.
3) 아예 root로 바꾸어 명령어를 적는다.

를 해야하는 데, 이 중 3번을 택하여 다음 명령어를 통해 root로 바꾸어준다.

sudo -s


2. docker 설치

docker 설치를 위해 다음 명령어를 적어준다.

curl -fsSL https://get.docker.com/ | sudo sh


3. Imgae 실행

docker run ubuntu:16.04

위 명령어를 통해 ubuntu:16.04 이미지를 실행하면 되는데, 문제가 발생했다.

daemon문제의 시작

이런 에러가 나오며, 실행이 되지 않는다.
해석을 해보면 docker.sock에 있는 docker daemon에 연결할 수 없는데, docker daemon이 실행되고 있는지 확인하라는 의미이다.

그렇다면 docker daemon은 무엇일까....으윽

4. docker daemon?

먼저 daemon을 알아보기로 했다.


#daemon (데몬 또는 디먼)


사용자가 직접적으로 제어하지 않고, 백그라운드에서 돌면서 여러 작업을 하는 프로그램, 시스템 로그를 남기는 syslogd처럼 보통 데몬을 뜻하는 'd'가 이름 끝에 붙으며, 일반적으로 프로세스로 실행된다.

시스템은 시동할 때 데몬을 시작하는 경우가 많으며, 이런 데몬들은 네트워크 요청, 하드웨어 동작, 여타 프로그램에 반응하는 기능을 담당한다.

 

예를 들어, ssh를 통해 서버를 연결 시키고 싶다고 가정했을 때

사용자가 입력한 ssh명령을 해석해 pc에 있는 ssh명령을 실행하고, 아규먼트로 받은 IP로 ssh접속을 시도하여,
서버에서 실행 중인 ssh 데몬과 세션을 맺는다.

 

이와 같은 경우에 데몬이 사용되어진다.

대표적으로는 inetd, httpd, nfsd, sshd, named, lpd 등이 있다.

 

그렇다면 docker daemon은 무엇일까?

 

Docker 공식홈페이지의 dockerd문서에서 dockerd를,

컨테이너들을 관리하는 백그라운드 프로세스라고 정의하고 있다.

5. docker daemon 실행

docker daemon을 알아보았으니, 결국 daemon을 실행하면 된다.

아아아악 오류의 반복..............

 

[Reference]

-https://velog.io/@pop8682/Docker-Cannot-connect-to-the-Docker-daemon-at-unixvarrundocker.sock.-Is-the-docker-daemon-running-%EC%97%90%EB%9F%AC-%ED%95%B4%EA%B2%B0

-https://blogger.pe.kr/770