ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Docker - 명령어 실행
    카테고리 없음 2022. 4. 29. 12:56

    localhost:8083/index.html 로 접속했을 때 그 Container안에 있는 Web Server가 그 안에 저장되어 있는 index.html 파일을 읽어서 우리에게 보여주고 있는 화면이다.

     

    이 index.html 파일을 편집해서 원하는 WebApp을 만드는 것이 중요하다. 그러기 위해서는 Container 안으로 들어가서 Container를 수정할 수 있어야 한다.

     

     

    Docker desktop에서 하는 방법

    CLI 버튼을 누르면 터미널이 실행된다.

     

    이 터미널에서 pwd명령어를 실행하면, 그 Container안으로 들어가서 pwd 명령어를 실행한 것이다.

     

    Command Line에서 실행하는 방법 1

    docker exec [OPTIONS] CONTAINER COMMAND [ARG....]

    명령을 전달하고 싶음 CONTAINER에 이름을 지정을 하고, 그 뒤에 실행 시키고 싶은 명령(COMMAND)을 지정하는 것 그리고 명령어 뒤에 전달 하고 싶은 parameter들을 지정할 수 있는 것이다.

     

    예)

    docker exec [CONTAINER_NAME] pwd

    docker exec [CONTAINER_NAME] ls

     

    Command Line에서 실행하는 방법 2

    pwd, ls 는 Container를 대상으로 실행된 명령어라고 볼 수 있다. 그런데 우리가 Container와 지속적으로 연결을 유지하면서 계속 명령을 전달하고 싶을 때는  다른 방법을 사용해야한다.

     

    docker exec [CONTAINER_NAME] /bin/sh

    이때 /bin/sh라고 하게되면, 본쉘(Bourne shell)이라는 프로그램을 실행하게 된다. Shell이라고 불리는 프로그램들이 하는 역할은 사용자가 입력한 명령을  Shell프로그램이 받아서 운영체제에게 전달해주는 일종의 창구같은 역할을 한다.

     

    근데 실제로 실행해보면 실행하자 마자 끊겨버린다. 

     

    exec 명령어 뒤에 -it라는 옵션을 추가하면 '#'이 나온다. 즉 지금 부터 내리는 명령은 ws3 CONTAINER를 대상으로 해서 내려지는 명령이고 그 실행 결과가 보여질 것이라는 의미이다.

     

    Option

    --ineractive, -i  :  Keep STDIN open even if not attached

     

    --tty, -t  :  Allocate a pseudo-TTY

     

     

    exit하고 나가면 이제부터 내려지는 명령은 host를 대상으로 하는 명령이 된다.

     

    bash/shell

    sh는 기능이 많이 부족한 경우도 존재한다. 그래서 요즘은 bash를 많이 쓴다. 사용하는 Contaier에서 bash를 지원하지 않는 경우는 sh을 사용하도록 한다.

     

    Apache Server

    위 경로에 사용자가 요청한 웹 페이지를 보관하도록 약속되어 있다.

     

    Container 안의 index.html 편집하기

    실행 시켜보면 nano 에디터가 없다. 왜냐하면 Container의 덕목은 용량이 작은 것이다. 작은 Container에 nano/vim 같은  에디터까지 가지고 있으면 용량이 너무 커지기 때문이다. apt/yum을 이용해서 nano/vim을 설치하면 된다.

     

    참고

    https://yoonwould.tistory.com/126

     

    [용어]yum, apt, rpm 정리

    1.RPM 특징 - RPM(redhat package manager)의 약자로 리눅스 시스템 전체를 다시 설치하지 않고 필요한 개별 구성요소들만 업그레이드 할 수 있다. RPM으로 패키징된 새로운 운영체제(redhat, excel, turbo, suse)..

    yoonwould.tistory.com

     

    apt를 최신 상태로 갱신한다.

    apt install nano 명령어로  nano 에디터를 설치한다.

     

    NANO 에디터 사용방법

    https://opentutorials.org/module/3747/22523

     

    파일생성과 읽기 - POSIX CLI1

    수업소개 파일을 만들고, 읽는 방법을 알아보겠습니다.  강의

    opentutorials.org

     

    nano index.html

    index.html 편집창을 연다. 

     

    ctrl + x 를 누르면  편집한 내용을 저장할지 말지를 묻는 창이 나온다.

    y + enter를 누르면  저장이되고, 원래의 command 창으로 돌아온다.

     

    이렇게 해서 우리는 우리가 생성한 Container 안에 file을 바꿀 수 있는 상태가 된다.

     

    쨘!!

    [출처 -https://youtu.be/P0ZFyB4iQd0]

    댓글

Designed by Tistory.