I can do it!!

He can do! She can do! why cannot me? i can do it!

개발/sk infosec cloud ai 전문가 양성과정

[docker 2]SK infosec 클라우드 AI 전문가 양성과정 수업필기본

gogoriver 2020. 9. 6. 20:54

SK infosec 클라우드 AI 전문가 양성과정

WEEK 02

07/15

DOCKER 명령

nginx 환경 구축

  • nginx는 가장 많이 사용하는 웹 서버
  1. nginx 설치
    • 도커허브에 검색 후 설치
      • 방법 1
      • $ docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
        • docker (container) run ~
      • 방법 2
      • FROM nginx
      • COPY nginx.conf /etc/nginx/nginx.conf
    • 도커 toolbox에 설치
    • $ docker nginx
    • 도커 desktop에서는 검색 중 nginx에 넣어둔다

Docker 이미지 조작

  1. 이미지 실행하기

    • docker portforwarding을 해야한다. 왜냐하면 virture box를 사용하기 때문이다.
    • docker desktop 사용시에는 필요없다.
    • docker01
    • vm ware에서 설정 > 네트워크 > 고급 > 포트 포워딩 > 다음과 같이 http , https 추가하기
    • docker run --name webserver -d -p 80:80 nginx
    • docker toolbox에 위와 같이 입력
    • 도커에서 내부적으로 쓰는 identifier을 생성해준다.
    • docker01
    • ps를 하면 위와 같이 설치 내역을 볼 수 있는데, docker ps -a로 치면 설치한 것들 다 나온다.
    • 컨테이너 명 미설정시 : 교수님은 elegant_yalow 나는 peaceful_gagarin으로 출력된다 다 다르다
    • 로컬호스트 접속시 해당 페이지 오픈
    • 80:80으로 run중이라서 이렇게 뜨고 있다.
  2. 도커 컨테이너 확인

    • 실행중인 container확인

      • docker ps
      • docker ps -a
    • exited된 컨테이너 삭제

      • docker rm container-name
      • docker rm helloworld
      • docker ps -a
    • container 명 변경

      • docker rename container -name container-rename
    • container 중지

      • docker stop container web
      • docker stop web
    • container 실행

      • docker start web
    • +alpha

    • 도커와 가상화와 차이점

    • 설명 blog

    • 시험 삘


DOCKERFILE을 사용한 코드에 의한 서버 구축

  1. 도커 contos설치

    • ubuntu, centos:7 image download

    • docker pull ubuntu

    • docker pull centos:7 #centos:version(tag)

    • image 상세보기 - image config Dockerfile 조회

    • docker image inspect ubuntu

    • image 삭제 - __image 사용하는 container가 있는 경우 사용하는 container삭제후 사용 가능하다.

    • docker image rm imageID

    • 사용하지 않는 image삭제

    • docker image prune

    • ubuntu, centos:7 container 생성/실행(create/start)

    • centos의 /bin/cal --calendar 실행 -it:표준입출력 사용

    • docker run -it --name centos_cal centos:7 /bin/cal

    • docker ps -a

    • docker run -it --name centos_shell centos:7 bin/bash

    • root@:/#adduser test1 //test1 user 생성

    • root@:/#su test //test1 user로 변경

    • testQ:/$ ls -al //목록보기

    • testQ:/$ exit // root로 가기

    • test@:/# exit // docker로 가기

    • docker pa -a // centos_shell은 exited상태

    • root@:/# // ctrl+p+q docker로 가기

    • docker attach centos_shell // root로

    • root@:/#

    • ctrl+p+q 누르면 root@ef00077585d2:/# read escape sequence이렇게 출력되고 나오게 만든다

    • 도커를 이용하면 attach를 이용해 이거저거 쓰기 좋다.

    • apt-get -> pip과 같은 기능을 한다. 설치할 때 쓰인다.

    • 앞으로는 운영 및 시스템도 코딩해야한다. 위와 같이 `기호를 활용하여 두개의 동작을 한꺼번에 같이 진행할 수 있다.

    • 이렇게 쳐야한다. 역시 또 오타나서 다경언니가 해결해주셨당...ㅎㅎㅎㅎ


centos

  • centos는 ubuntu와 다른 문법 사용한다. but 뿌리는 리눅스이다.
    • 여기서는 나갈려면 :wq : 저장하고 나가기 하기
    • vi editor
    • 해당 리눅스 파일과 디렉토리는 한번 공부할 가치가 있다.
    • chmod
      • changemod : 접근 권한을 바꾸려면 chmod 명령을 사용
      • set u id가 셋팅된 파일부터 공격하려고 한다.
      • 기초 단계에서 따라서 find를 많이 쓴다. --help해서 한번 봐라

docker 이미지 생성

  • 도커의 설정값 등은 이미지라고 한다.
    • 컨테이너로부터 이미지 작성
    • ubuntu, centos 등이 컨테이너입니다.

정규표현식