도커

    도커 컨테이너 다루기(5) - 컨테이너 로깅

    1. json-file 로그 사용하기 도커는 컨테이너의 표준출력과 에러로그를 별도의 메타데이터 파일로 저장합니다. [root@localhost ~]# docker run -d --name mysql -e MYSQL_ROOT_PASSWD=1234 mysql:5.7 eeafd60870f87d7d47ee8d2647b1157be3b55a205f59b63678f7f85b19d7e73c 먼저 mysql 5.7 버전의 백그라운드모드의 컨테이너 하나를 생성하였습니다. [root@localhost ~]# docker logs mysql 2021-05-28 01:28:57+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.33-1debian10 start..

    도커 컨테이너 다루기(4) - 도커 네트워크

    1. 도커 네트워크 구조 도커는 컨테이너에 내부 IP(172.17.0.)를 순차적으로 할당하며, 이 IP는 컨테이너가 restart될 때 마다 변경될 수 있습니다. 이 IP는 도커가 설치된 호스트, 즉 내부망에서만 쓸 수 있는 IP이므로 외부와 연결될 필요가 있습니다. 도커가 설치된 호스트에서 ifconfig 나 ip addr과 같은 명령어로 네트워크 인터페이스르르 확인하면 실행 중인 컨테이너 수 만큼 veth~(virtual ethernet) 로 시작되는 인터페이스를 확인할 수 있습니다. vethf7119a1: flags=4163 mtu 1500 inet6 fe80::e8f2:50ff:fe9a:ee4f prefixlen 64 scopeid 0x20 ether ea:f2:50:9a:ee:4f txqueu..

    도커 컨테이너 다루기(3) - 도커 볼륨

    도커 이미지로 컨테이너를 생성하면 이미지는 Read-Only 가 되며 컨테이너의 변경사항만 별도로 저장해서 각 컨테이너 정보를 보존합니다. 즉, 이미 생성된 이미지는 어떠한 경우로도 변경되지 않으며 컨테이너 계층에다가 원래 이미지에서 변경 된 파일시스템 등을 저장합니다. 만약 A라는 컨테이너를 삭제하면 컨테이너 계층에 저장돼있던 정보도 삭제됩니다. 도커 컨테이너는 생성/삭제가 매우 간단하므로 컨테이너 삭제 시 데이터를 복구할 수 없게 됩니다. 이를 방지하기 위해 컨테이너의 데이터를 영속적(Persistent) 데이터로 활용할 수 있는 방법이 몇 가지 있습니다. 1. 호스트 볼륨 공유 [root@localhost test1]# docker run -d --name hostvol_test -e MYSQL_R..

    도커 컨테이너 다루기(2) - 컨테이너 외부 노출

    컨테이너는 VM과 마찬가지로 Virtual IP를 할당 받습니다. 도커는 기본적으로 172.17.0.x 의 IP를 순차적으로 할당합니다. 컨테이너 생성 후 네트워크 인터페이스를 확인해보면 다음과 같습니다. [root@localhost ~]# docker run -t -i --name network_test ubuntu:18.04 Unable to find image 'ubuntu:18.04' locally 18.04: Pulling from library/ubuntu 4bbfd2c87b75: Pull complete d2e110be24e1: Pull complete 889a7173dcfe: Pull complete Digest: sha256:04919776d30640ce4ed24442d5f7c1a8e4b..

    도커 컨테이너 다루기(1) - 생성/진입/삭제

    도커를 편하게 다루기 위해 Kitematic 이라는 도구가 있지만 CLI 기준으로 정리한다. (Windows, Mac, Linux 등 OS에 상관없이 도커의 CLI를 사용하는 방법은 전부 동일) 1. 컨테이너 생성 ● 도커 엔진 버전 확인 [root@localhost ~]# docker -v Docker version 20.10.6, build 370c289 도커는 다양한 기능이 빠르게 업데이트되고 새로운 버전이 배포되므로 사소한 버전차이로 중요한 기능을 사용하지 못 할 수도 있기 때문에 설치된 도커 엔진의 버전을 확인하는 것은 중요하다. ● 도커 컨테이너 생성 (1) docker run [root@localhost ~]# docker run -i -t ubuntu:14.04 Unable to find ..

    docker란?

    도커(docker)란? 리눅스의 응용 프로그램들을 소프트웨어 컨테이너 안에 배치시키는 일을 자동화하는 오픈 소스 프로젝트이다. 도커 웹 페이지의 기능을 인용하면 다음과 같다: 도커 컨테이너는 일종의 소프트웨어를 소프트웨어의 실행에 필요한 모든 것을 포함하는 완전한 파일 시스템 안에 감싼다. 다시말해서 도커는 "애플리케이션을 신속하게 구축하고 테스트 및 배포할 수 있는 소프트웨어 플랫폼" 이라고 할 수 있으며, 소프트웨어를 컨테이너라는 표준화 된 유닛으로 패키징하며 이 컨테이너에는 라이브러리/시스템도구 등 S/W를 실행하는 데 필요한 모든 것이 포함되어 있다 또한 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있고 기존 VM보다 퍼포먼스가 좋다 (기존 VM은 호스트에 의존적이라 성능저하를..