도커 배우기
프로젝트를 진행하며 새로운 서버를 띄우거나 환경을 변경하는 과정에서 많은 시간과 노력이 들어 항상 도커를 활용하고 싶다는 생각은 하였다. 하지만 프로젝트 초기에 적은 서버만 구축하면 상황이였고 더 먼저 학습해야할 것들이 많았기 때문에 미뤄왔었다. 하지만 이번에 개발자 커뮤니티에 도커 학습에 대한 질문과 답변에서 카타코다 도커 과정과 도커 공식 문서 2가지만 알아도 된다는 조언에 이번 기회에 더 늦기 전에 시작하기로하였다.
항상 드는 생각이지만 빠른 성장을 위해서는 좋은 학습 자료가 필수이고 더 빨리 학습하여 고군분투한 사람들의 조언은 아주 꿀이라고 할 수 있다.
1. 포스팅 의도
해당 포스팅은 위 과정을 간단 정리하여 해당 과정을 진행하고 싶은 사람이 미리 한번 훑어보는 것과 위 과정을 진행한 사람이 다시 보며 복습하는 용도이다.
2. Docker & Contaniners 코스

도커의 기본과 컨테이너를 동작하는 방법을 배우는 코스이다. 해당 코스는 21개의 시나리오로 구성되어 있고 각 시나리오는 어떠한 설정이 주어지고 해당 설정에 맞는 행동들을 하면서 자연스럽게 도커를 학습하는 방식이다. 예를 들어 처음 Deploying your first docker container에서는 개발자 Jane이 되어 Redis를 배포하는 일이 주어지고 이 일을 하면서 도커를 통한 배포를 학습한다.
3. 중요 학습 내용 정리
이제부터는 위 코스를 학습하며 중요한 것들을 정리할 것이다. 필요에 따라 가볍게 훑어보거나 학습 후 간단하게 다시 볼 때 아래 내용을 보면 될 것이다.
3.1 Deploying Your First Docker Container
docker search redis
redis 문자열이 포함된 컨테이너를 검색한다.
docker run -d redis
redis를 백그라운드에서 실행하는 명령어이다.
docker ps
도커로 실행중인 컨테이너 목록을 출력한다.
docker inspect <friendly-name|container-id>
IP와 같은 해당 컨테이너의 세부 정보를 출력하는 명령어이다.
docker logs <friendly-name|container-id>
기본 출력과 에러를 보여주는 명령어이다.
docker run -d --name redisHostPort -p 6379:6379 redis:latest
특정 포트를 할당하는 실행 방법
docker run -d --name redisDynamic -p 6379 redis:latest
동적으로 포트를 할당하는 방법
docker port redisDynamic 6379
포트 확인하는 방법
docker run -d --name redisMapped -v /opt/docker/data/redis:/data redis
컨테이너 데이터를 저장하는 방법
docker run ubuntu ps
우분투 컨테이너를 실행하고 컨테이너에서 실행 중인 모든 프로세스를 보여준다
docker run -it ubuntu bash
우분투 컨테이너 내부 배쉬에 접근할 수 있다.
3. 마무리
이번 포스팅에서는 1개의 시나리오만 정리하였고 다음 포스팅에서 다음 시나리오들을 정리할 예정이다. 모든 시나리오를 정리하고 해당 코스에 대한 리뷰를 하겠다.