DevOps

    [Docker] docker 로그 확인하기

    로그 확인하기 $ docker logs [OPTIONS] CONTAINER 기본 명령어인 docker logs 이미지 ID를 하면 그냥 출력이 된다 이번에는 --tail 옵션을 사용해보겠다 $ docker logs --tail 5 2e --tail 옵션을 사용해서 5개의 로그만 출력하게했다. 이번에는 로그를 실시간으로 출력해보자 $ docker logs -f 2e 위의 터미널 처럼 계속 로그가 실행되는 걸 확인할 수 있다 그다음은 타임스탬프 기능이다 $ docker logs -f -t 2e 각각의 로그행이 어떻게 찍혔는지 확인할 수 있다. 호스트 운영체제의 로그 저장 경로 이 경우는 log driver를 json-file로 했을 때만 유효하다 $ cat /var/lib/docker/containers/$..

    [Docker] docker 볼륨 컨트롤하기

    도커 볼륨이란 컨테이너의 특정 폴더를, 호스트 시스템(OS)에 연결해, 컨테이너가 삭제되더라도, 데이터를 유지할 수 있도록 하는 것( docker가 자동으로 host 경로 설정 ) 1. 호스트 볼륨 호스트의 디렉토리를 컨테이너의 특정 경로에 마운트 한다. $ docker run -ti -d -v $(pwd)/test.txt:/home/ubuntu/test.txt ubuntu 위의 명령어로는 pwd로 현제 경로에 있는 test.txt 파일을 실행할 ubuntu 컨테이너의 /home/ubuntu/ 경로에 마운트를 하겠다는 의미이다. 2. 볼륨 마운트 특정 컨테이너의 볼륨 마운트를 공유할 수 있다. $ docker run \ -d \ -it \ -v $(pwd)/html:/usr/share/nginx/html..

    [Docker] docker run 주요 옵션

    docker를 사용한다면 알 수밖에 없는 명령어는 docker run 명령어일 것이다. 많은 옵션들이 있지만 주요 옵션만 다뤄보도록 하겠다. docker run docker run 기본 포맷에서 이미지는 필수이고 이미지 ID나 repository:tag를 사용할 수 있다 $ docker run [OPTIONS] IMAGE [COMMAND] [ARG...] -t , -i옵션 -t는 tty(가상 터미널)을 할당. 리눅스에 키보드를 통해 표준 입력(stdin)을 전달할 수 있게 한다. (주로 -it 함께 사용) -i는 컨테이너의 표준 입력(stdin)을 활성화. (주로 -it 함께 사용) -i 옵션과 -t 옵션을 같이 쓰는 경우입니다. docker 컨테이너에 표준 입력(stdin)을 열어두고(-i), 가상 터..

    [Linux] Read, Write, Execute 권한, chmod 권한 변경

    일단 터미널에 vi helloworld.txt 를 입력하고 helloworld!! 만 입력하고 저장하고 나오자 그다음 ls - al | grep hellow 를 입력한다면 다음과 같은 출력이 나올거다. 터미널에서 출력된 결과중에서 , 가장 왼쪽의 표현부터 살펴보겠다. 파일 hellowrld.txt는 -rw-rw-r-- 이라고 출력이되어있다. r, w, x는 각각 read permission, write permission, execute permission으로 읽기 권한, 쓰기 권한, 실행 권한을 나타낸다. 3번에 걸쳐서 나타나는 이유는 사용자와 그룹, 나머지 사용자에 대한 권한 표시하기 위함이다. helloworld.txt 파일의 권한은 소유자와 그룹은 읽기와 쓰기 권한, 다른 사용자는 읽기 권한만 가..

    [Linux] 리눅스 디렉토리 구조 개념

    리눅스는 유닉스 계열을 바탕으로 만들어진 오픈소스 운영체제이다. 그래서 유닉스와 마찬가지로 모든 것들을 파일로 관리한다. 또한, 리눅스의 경우 계층구조(트리구조)의 디렉토리를 가지고 있는데, 이것은 용도에 따라 구분되며, 이를 파일시스템이라고 부른다. 파일종류 일반 파일 데이터 저장에 사용되는 파일이다. 리눅스에서 사용되는 파일 대부분이 일반 파일에 속한다. 실행 파일, 데이터 파일, 이미지 파일은 바이너리(1과 0의 형태) 파일이라고 부른다. 텍스트 파일은 아스키(ASCII)코드로 구성되어 vi, vim 명령어 등의 문서 편집기 명령어로 내용을 보거나 수정할 수 있다. 그 외 다른 파일들은 확장자에 맞는 특정 응용 프로그램이 있어야 확인할 수 있다. ​ 디렉토리 파일 디렉토리 역시 파일 종류 중 하나이..

    [DevOps] DevOps가 뭔지알아??? 내가알려줄게

    DevOps 란 Development와 Operation의 합성어인데 개발과 운영이다 DevOps 가 나온 이유 데브옵스가 나온 배경부터 알려면 전통적인 개발 운영 체계부터 봐야 한다. 대부분 개발팀에서 개발이 끝나면 애플리케이션은 테스트를 거쳐 운영팀에서 애플리케이션을 배포하고 관리 운영을 한다. 이렇게 거쳐간 애플리케이션은 개발 팀보다 운영팀에 의해서 운영이 된다 여기서부터 문제점이 나온다 개발을 해본 사람이라면 분명 무조건 에러가 발생한다 근데 위에서 말했듯이 개발팀은 애플리케이션을 잘 알고 있지만 운영팀의 인프라를 알지 못하며 반대로 운영팀은 애플리케이션은 모르며 인프라에 대해 잘 알 것이다 이렇게 되면서 에러가 발생한 부분에서 서로 문제가 아니라고 책임회피를 하게 된다 책임회피를 하게 된다면 에..

    [DevOps] SaaS??? 너 누구야!!!

    일단 SaaS란 Software as a Service 로 번역하자면 소프트웨어 클라우드 애플리케이션과 기본 IT 인프라 및 플랫폼을 사용자에게 제공하는 구독형 서비스이다. 다들 IT에 관심이 많다면 설치형 소프트웨어가(SW) 지나가고 SaaS가 등장했다 라고 하는데 SaaS와 SW, 가장 큰 차이점은 무엇일까? 설치형 SW의 단점 SaaS는 유지 및 보수가 매우 쉽고 최신 SW 업데이트를 빠르게 제공할 수 있다. 문제가 발생해도 SaaS 패키지는 퍼블릭 클라우드 속에 있기 때문에 SW 개발사가 즉시 수정할 수 있으며, 최신 기능도 SW에 재빨리 업데이트할 수 있다. 개인과 기업 입장에서도 별도의 업데이트를 하지 않아도 문제가 해결된 최신 버전의 SW를 이용할 수 있으니 매우 편리하다. 사실 많은 SW ..

    [DevOps] 온 프레미스와 클라우드의 차이점

    온프레미스(On-premise)와 클라우드(Cloud) 시스템의 장단점을 말하기에 앞서 두 시스템의 정의를 먼저 이야기해볼까 합니다. 두 시스템의 정의를 알면 장단점을 조금 더 쉽게 이해할 수 있습니다. 기본적으로 두 시스템은 모두 서비스(게임, 웹 애플리케이션, 쇼핑몰, 실시간 채팅, 기타 등)를 만들 때 필요한 재료(자원)들을 구성하는 방법에 대한 이야기입니다. 온프레미스는 집을 짓는다고 할 때 집을 짓기 위한 자제 구매부터 건물 도면 그리는 작업, 시공, 건축, 그리고 인테리어까지 모든 과정을 누구의 도움 없이 집을 필요로 하는 사람이 혼자서 다 처리하는 방법입니다. 처음 집을 집는 사람뿐만 아니라 여러 번 집을 지어본 사람도 혼자서는 쉽게 할 수 있는 일이 아닙니다. 클라우드 시스템도 온프레미스처..