이 가이드의 목표는 아주 아주 간단합니다!
1. MacBook M1, Air에 도커를 설치하여
2. 우분투 환경을 구축
3. Valgrind, gdb 등 Linux와 우분투에서만 가능하던 것들을 할 수 있게 하는 것입니다.
4. 그리고 이 모든 것을 아주 쉽게요.
만약 도커의 원리 등 자세한 것이 궁금하시다면?
1. 설치
위 사이트로 이동하여 Mac 용 Docker Desktop을 설치합니다.
무엇을 설치하여야 하는지 모르신다면?
2. 실행
설치 후 실행하면 가이드가 진행될 것입니다. 적당히 따라하시다가 나오시면 됩니다.
설치 확인
Docker의 컨테이너 터미널이 아닌 Mac 터미널에 아래의 명령어를 치세요!
docker run hello-world
Shell
복사
위 메시지가 출력되면 잘 설치가 된 것입니다!
아래의 명령어를 다시 입력해 봅시다.
docker run -it --name hello ubuntu:focal /bin/bash
Shell
복사
예제의 컨테이너 이름은 hello로 하겠습니다.
만약 --name hello 부분을 생략하면 임의로 도커가 컨테이너 이름을 지정합니다.
현재 우분투 최신 버전에 문제가 있어 focal로 깔겠습니다!! (20220915 기준)
이때 철학자나 수학자 이름부터, 적절한 형용사 + 명사의 조합으로 컨테이너 이름을 지어줍니다.
약간의 시간이 소모된 후 컨테이너가 생성되고 우분투 컨테이너에 접속이 될 것입니다.
만약 무언가가 잘 안 됐거나, 컨테이너에서 나갔다면? (exit 명령어, 터미널 종료 등)
# 실행 (여기서 hello는 컨테이너 이름)
docker start hello
# tty 접속 (여기서 hello는 컨테이너 이름)
docker attach hello
Shell
복사
위의 명령어로 다시 맥 터미널을 통해 컨테이너에 들어올 수 있습니다.
exit으로 컨테이너를 빠져나가면, 자동으로 종료가 됩니다! 따라서 start를 다시 해줘야 합니다.
3. 대망의 마지막, 커스텀
# 컨테이너(hello) -> 호스트(사용자) (경로와 디렉토리, 파일 이름은 자유롭게 설정하세요)
$ docker cp hello:~/ ~/42cursus
# 호스트(사용자) -> 컨테이너(hello)
$ docker cp ~/42cursus hello:~/
Shell
복사
이렇게 홈 디렉토리(~)에 안착!
저는 vim을 깔아서 .vimrc와 .viminfo가 있는 모습입니다.
먼저 우분투에 vim과 gcc를 깔아야 하겠지요?
그전에 먼저 apt update를 합시다.
# 차례대로 치시면 됩니다.
apt update
apt-get install gcc
apt-get install vim
# 커스텀 영역
apt-get install valgrind
apt-get install gdb
apt-get install git
# e.t.c. ...
Shell
복사
여기까지가 끝입니다!
마치며
이제 valgrind나 gdb 등을 이용한 디버거를 통해 멀티 프로세스의 메모리 누수와 데이터 레이스를 감지할 수 있습니다. 1(설치)의 과정을 생략한다면, 클러스터 맥에서도 도커를 사용하실 수 있습니다.
이제 Docker와 함께 자유롭게 항해하시면 됩니다.
유용한 명령어 몇 개를 두고가겠습니다.
실행 관련
hello는 컨테이너 이름입니다!
#정지된 컨테이너 실행
docker start hello
#재부팅한것처럼 다시 실행
docker restart hello
#시작한 컨테이너에 접속 -> 엔터 한 번 더 입력하면 bash shell 표시됨
docker attach hello
#컨테이너 정지
docker stop hello
Shell
복사
목록 출력
#실행중인 컨테이너 출력
docker ps
#정지된 컨테이너까지 모두 출력
docker ps -a
#받은 이미지의 목록 출력
docker images
Shell
복사
삭제, 제거
#컨테이너 삭제
docker rm hello
#이미지 삭제
docker rm hello-world
Shell
복사
부족한 글 읽어주셔서 감사합니다.
잘못된 점과 부족한 점은 댓글 혹은 DM 주시면 감사하겠습니다!