반응형

문제

최근 사내 스위치 문제로 서버를 재부팅해야하는 일이 있었는데, 재부팅 후 docker-compose up -d 를 실행하니 아래와 같은 에러가 발생하였습니다.

ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?

해결

에러 내용과 같이 docker daemon과 연결이 되지 않아 발생하였고, 이유는 재부팅 과정에서 docker daemon이 실행되지 않았기  때문입니다. 아래와 같이 도커 서비스 시작 후 docker-compose up -d를 하면 도커가 잘 올라오는 것을 확인할 수 있습니다.

 

service docker start
docker-compose up -d

 

반응형
반응형

docker-compose.yml - nginx 부분

보통 컨테이너 내부와 로컬 volumes 마운트 시 위 사진과 같이 작성하게 됩니다.

 

잘못된 결과

다만 사전 작업 없이 위의 4개의 볼륨을 마운트 하게 되면

conf파일 2개와 cert관련 디렉토리 2개가 아닌 디렉토리 4개가 생깁니다.

정확하지는 않지만 도커 볼륨 마운트시 디폴트가 폴더로 지정되어 있지 않을까 생각합니다.

 

해결 방법

새로운 파일을 도커내부에 생성하고 로컬에서 관리하고 싶다면

1. 로컬에서 도커 내부에 생성하고 싶은 파일을 생성한다.

2. 위 사진과 같이 도커 마운트를 진행한다.

 

결과

아래와 같이 파일2개 디렉토리2개가 생성된 걸 확인할 수 있습니다.

nginx 도커 내부에 들어가 확인해봐도 파일이 생성된걸 확인할 수 있었습니다.

 

반응형
반응형

도커  컨테이너 내부 접속

아래와 같이 명령어를 입력하면 도커 내부 컨테이너에 접속할 수 있습니다.

docker exec -it [컨테이너 ID] /bin/bash

 

반응형
반응형

도커  컨테이너 확인

도커 내부컨테이너의 ip를 확인하려고 합니다.

우선 현재 airflow 컨테이너를 띄어놓은 상태입니다.

 

도커  컨테이너 내부아이피 확인

아래 명령어를 입력하시게 되면 도커 컨테이너 내부 아이피를 확인할 수 있습니다.

docker inspect -f \
'{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' \
3f6d8e568bcf --컨테이너 ID--

 

반응형

+ Recent posts