전체 글

전체 글

    Docker 컨테이너의 생명 주기

    Docker 컨테이너의 생명 주기

    보통의 컨테이너는 다음과 같은 생명 주기를 가집니다. 생성되고 시작하고 동작하다가 정지하고 삭제되죠. 주요 명령어들과 위의 상태주기를 함께 보겠습니다. Create docker create docker create 는 이미지를 통해 컨테이너를 생성합니다. 생성 후 컨테이너는 Created 상태로 존재합니다. 이미지에는 파일 스냅샷과 커맨드가 있는데요. Created 는 파일 스냅샷이 컨테이너의 저장공간에 적재되고 커맨드가 실행되지 않은 상태입니다. docker creater debian Start docker start start 는 컨테이너를 실행시킵니다. Create 상태에서는 컨테이너에 파일 스냅샷이 적재된 상태인데요. 이 상태에서 start 상태가 되면 이미지의 Command가 컨테이너에서 실행됩..

    Docker 이론, 개념 정리 (2)

    Docker 이론, 개념 정리 (2)

    Docker 컨테이너 나열 실행 중 컨테이너 나열 docker ps 를 사용 여기서 ps는 Process status의 약자이다. docker ps 컨테이너 아이디, 이미지, 커맨드, 생성 시간, 상태, 포트, 이름이 출력 된다. 모든 컨테이너 표시 docker ps 를 입력하면 running 중인 컨테이너만 출력 되는데 모든 컨테이너를 보고 싶으면 -a 옵션을 붙인다. -a 는 --all 로도 사용 가능하다. docker ps -a 출력 형식 변경 표시되는 형식을 변경하고 싶다면 --format 옵션을 사용한다. docker ps --format 'table{{.Names}}\t {{.Image}}\t {{.Status}}' -a 자세한 정보는 https://docs.docker.com/engine/r..

    Docker 이론, 개념 정리 (1)

    Docker 이론, 개념 정리 (1)

    Docker는 왜 사용할까? 프로그램을 간단히 설치하기 위해서 - > 다르게 이야기하면 프로그램을 간단하게 Packaging 가능하다 Docker는 무엇일까? Docker가 무엇인지 알기 위해서는 컨테이너를 알아야 한다. 컨테이너는 무엇일까? 화물 컨테이너를 생각해보자 화물 컨테이너를 이용해서 물건을 실으면 물건의 크기와 무게 등과 상관없이(신경 쓰지 않고) 물건을 적재할 수 있다. 소프트웨어에서 말하는 컨테이너도 마찬가지다 여러 소프트웨어 등을 동일한 규격으로 묶어 실제 사용자가 최대한 신경을 덜 쓰고 사용할 수 있도록 만든 것이 컨테이너이다. Image? Container? 이미지와 컨테이너는 무엇일까?? 이미지는 소프트웨어 구동에 필요한 의존(Dependency)과 명세를 담고 있다. 컨테이너는 이..

    [리액트 네이티브/React Native] TypeScript 템플릿 사용시 에러

    [리액트 네이티브/React Native] TypeScript 템플릿 사용시 에러

    Error error An unexpected error occurred: "https://registry.yarnpkg.com/react-native-template-template-typescript: Not found”. error This module isn't specified in a package.json file. react-native cli를 이용해서 프로젝트를 생성할 때 typescript template를 사용할 수 있다. PC에 react-native cli를 이미 설치했기 때문에 아래와 같이 project를 세팅하려고 했다. react-native init AwesomeTSProject --template react-native-template-typescript 하지만 아래와 ..

    PM2를 이용한 리눅스 프로그램 실행 및 시작프로그램 등록

    PM2를 이용한 리눅스 프로그램 실행 및 시작프로그램 등록

    이 글은 어떤 사람들을 위한 글인가요? 라즈베리파이나 다른 리눅스에 시작프로그램을 등록하고 싶어요 그 프로그램이 예상치 못한 런타임에러로 중단되어도 알아서 다시 시작했으면 좋겠어요 따로 로깅을 하지 않더라도 해당 프로그램의 로그를 확인하고 싶어요 다른 방법도 있지 않아요? 단순 시작프로그램 등록만을 원한다면 rc.local 파일을 수정하거나 데몬으로 추가할 수 있지만 프로그램이 알 수 없는 문제로 종료되면? 해당 프로그램의 로그를 확인하고 싶다면? 같은 문제는 따로 처리해야합니다. 😦 PM2를 사용한다면 간단한 방법으로 위와 같은 문제들을 해결 할 수 있습니다. PM2는 무엇인가요? 사용자의 프로그램을 항상 동작하도록 도와주는 프로세스 관리자입니다. 기본적으로 NODE.JS에 최적화되어 있지만 아래 언어..