본문 바로가기
IT/Docker

Docker Container tutorial (도커 컨테이너 매뉴얼) 2-3.명령어 (container 2)

by halizy 2018. 7. 14.


이번 포스팅은 기본적으로 docker 운영에 있어서 사용되는 명령어에 대해 다뤄보았습니다.

문의 사항은 댓글로 남겨주시면 성심성의껏 답변드리도록 하겠습니다.




Docker command (comtainer 2)




컨테이너 내부 파일 외부 복사 (cp)

# docker cp '컨테이너명:경로포함파일멍 호스트경로' // 컨테이너 내의 파일을 호스트경로로 복사하는 명령어


$ docker cp hello-nginx:/etc/nginx/nginx.conf ./  // hello-nginx 컨테이너 내의 /etc/nginx/nginx.conf 파일을 /경로로 복사

 

$ ll


total 16


 drwxrwxr-

 2

 root

 root

 4096

sep 21

 18:00

 ./

 drwxrwxr-x 

 4

 root

 root

 4096

 sep 21

 14:32

 ./

 -rw-rw-r--

 1

 root

 root

 328

 sep 21

 12:11

 Dockerfile

 -rw-rw-r--

 1

 root

 root

 1614

 sep 21 

 13:14

 nginx.conf





컨테이너의 변경사항을 이미지로 생성 (commit)


# hello:0.1 이미지를 가지고 실행된 hello-nginx컨테이너를 가지고 hello:0.2 이미지 만들기


$ docker commit -a "halizy" -m "add hello.txt" hello-nginx hello:0.2 

# docker commit -a "작성자 -m "커밋메세지" 컨테이너명 생성하고자하는 이미지명:태그


$ docker images


 REPOSITORY

 TAG

 IMAGE ID 

 CREATED 

 VIRTUAL SIZE 

 hello

 0.2

 97dff2e5e398 

 5 seconds ago   

 227.7 MB

 hello

 0.1

 fbf9bf016837

 About an hour ago

 227.7 MB




컨테이너에서 변경된 파일 확인 (diff)


$ docker diff hello-nginx //본래 이미지 와 컨테이너 (hello-nginx) 생성 후의 차이 출력


# A:추가됨, C:변경됨, D:삭제됨  


A /data

C /etc

C /etc/nginx

A /etc/nginx/site-enabled

C /run

C /var

C /var/lib

C /var/lib/nginx

A /var/lib/nginx/body

A /var/lib/nginx/fastcgi

A /var/lib/nginx/proxy

A /var/lib/nginx/scgi

A /var/lib/nginx/uwsgi




컨테이너 세부정보 확인 (instpect)


# docker inspect 컨테이너명 또는 이미지명 /이미지 또는 컨테이너의 세부정보 확인


$ docker inspect hello-nginx 


[

{

    "Id": "89a7ccb2045ad02baea1d0c867374efafb002383786b2093b479ae430bca7105",

    "Created": "2018-07-14T08:33:18.230612607Z",

    "Path": "nginx",

    "Args": [],

    "State": {

        "Running": false,

        "Paused": false,

        "Restarting": false,

        "OOMKilled": false,

        "Dead": false,

        "Pid": 0,

        "ExitCode": 0,

        "Error": "",

        "StartedAt": "2018-07-14T08:33:18.331909122Z",

        "FinishedAt": "2018-07-14T08:41:00.298077171Z"

    },

    "Image": "fbf9bf016837c5ed398b4ec3325345372a0ebb8ada9b565e250dea742b4b0454",

    "NetworkSettings": {

        "Bridge": "",

        "EndpointID": "",

        "Gateway": "",

        "GlobalIPv6Address": "",

...         




댓글