도커(Docker) 활용

자주쓰는 명령어

  1. 컨테이너 생성, 시작

    # docker run
    
    • 형식 : docker run [옵션] [이미지이름]
      (이미지 이름은 도커허브에서 검색 가능)

    • 옵션

      • -it : bash 사용
      • -v : 디렉토리 공유 (-v /host/dir:/guest/dir)
      • -d : 백그라운드로 실행
      • -p : 포트 포워딩 (-p 80:80 호스트80포트를 컨테이너 80포트로 연결)
      • –name [컨테이너 이름]
      • –net [네트워크유형] (네트워크유형은 docker network ls 명령어로 검색 가능)
    • 예제 : docker run -it -p 80:80 -p 443:443 –name container-name image-name:latest

  2. 컨테이너 시작

    # docker start [이미지이름]
    
    • 예제 : docker start container-name
  3. 실행중인 컨테이너 접속

    # docker attach [컨테이너이름]
    
    • 설명 : exit 명령어로 빠져나오면 컨테이너가 중지되어버림, 중지하지 않고 빠져나오려면 [Ctrl + p + q]로 빠져나와야 됨
  4. 이미지 목록

    # docker images
    
  5. 컨테이너 목록

    # docker ps
    
    • 옵션
      • -a : 생성한 컨테이너 전체 목록
  6. 컨테이너 삭제

    # docker rm [컨테이너ID]
    
  7. 컨테이너 전체삭제

    # docker rm `docker ps -a -q`
    
  8. 이미지 삭제

    # docker rmi [이미지]
    
    • 옵션
      • -f : 강제삭제

실전예제 1 (OpenCV 생성)

  1. run docker image

    # docker run -it --dns=1.1.1.1 --name php-opencv morozovsk/php-opencv
    
  2. install php-opencv-examples into docker

    # git clone https://github.com/php-opencv/php-opencv-examples.git && cd php-opencv-examples
    
  3. start examples

    # php detect_face_by_dnn_ssd.php