Docker 기본 문법

Page content

무작정 도커 시작하기

  • dockerUbuntu를 설치하고 실행해본다.
  • 현재 파일 목록들을 살펴본다.
  • 빠져 나올 때는 EXIT를 실행한다.
C:\Users\human>docker run -it ubuntu:18.04
Unable to find image 'ubuntu:18.04' locally
18.04: Pulling from library/ubuntu
72d9f18d70f3: Pull complete
Digest: sha256:a3765b4d74747b5e9bdd03205b3fbc4fa19a02781c185f97f24c8f4f84ed7bbf
Status: Downloaded newer image for ubuntu:18.04
root@7a7a49e2d83e:/# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@7a7a49e2d83e:/#
  • 현재 도커 컨테이너 리스트를 확인한다.
$ docker ps -a
CONTAINER ID   IMAGE          COMMAND       CREATED        STATUS         PORTS     NAMES
7a7a49e2d83e   ubuntu:18.04   "/bin/bash"   18 hours ago   Up 5 minutes             practical_euler
  • STATUS가 Docker 컨테이너 재진입
docker exec -it 7a7a49e2d83e /bin/bash
  • 현재 운영중인 도커를 멈추고 싶다면 아래와 같이 작성한다.
docker stop 7a7a49e2d83e
  • 재활성화 하고 싶다면 아래와 같이 작업한다.
docker start 7a7a49e2d83e

컨테이너 이미지화

$ docker login -u your_id
Password:
Login Succeeded
Authenticating with existing credentials...
Login Succeeded

Logging in with your password grants your terminal complete access to your account.
For better security, log in with a limited-privilege personal access token. Learn more at https://docs.docker.com/go/access-tokens/
  • 기존 컨테이너 ID 7a7a49e2d83e를 이미지로 변환한다.
    • 새로운 Repository 이름은 mlearn 이라고 한다.
    • 태그 이름은 latest 라고 한다.
docker commit 7a7a49e2d83e your_id/mlearn:latest
  • 도커 이미지가 만들어졌는지 확인한다.
  • ubuntu 이미지를 다운받았기 때문에 size가 비슷한 것을 확인할 수 있다.
$ docker images
REPOSITORY        TAG       IMAGE ID       CREATED          SIZE
your_id/mlearn    latest    b26bdf7b071e   29 minutes ago   63.1MB
ubuntu            18.04     5d2df19066ac   2 weeks ago      63.1MB
hello-world       latest    feb5d9fea6a5   16 months ago    13.3kB
  • 도커 이미지를 push 하도록 한다.
docker push your_id/mlearn:latest

호스트 OS의 홈 폴더 마운트하기

  • 호스트 OS의 홈 폴더를 마운트 하기 위해서는 컨테이너 실행 시 -v 옵션을 지정한다.
    • : 기준으로 왼쪽은 로컬 PC, 오른쪽은 가상환경 내 경로임을 잊지 말자.
$ docker run -it -v C:\Users\human\Desktop\dockerhome:/home mlearn
  • home 폴더에서 temp 폴더를 생성하면 아래와 같이 폴더가 만들어지는 것을 확인한다.
root@5c950356cfc3:/# cd home/
root@5c950356cfc3:/home# mkdir temp

Untitled