본문 바로가기

docker

(5)
Docker-MariaDB 연동 DB를 저장해둔 도커 컨테이너와 그 DB와 연동이 되어야하는 프로그램이 들어있는 컨테이너를 연동이 필요하다. DB를 도커환경에서 이용하려한다면 어떻게 보면 당연한 이야기지만 도커 컨테이너는 각각이 분리되어있는 환경이기 때문에 설정이 필요하다. 그래서 내가 이용한 방법은 docker-compose파일을 이용한 방법이다. 하나의 docker-compose에서 여러개의 도커 컨테이너를 올릴 때, 따로 네트워크를 생성해주지 않는다면 하나의 default 네트워크 상에서 작동하고 그 안에서 컨테이너 간 통신에는 서비스이름을 호스트명으로 사용한다. version: "3" services: db:# 서비스명 container_name: mariaDB_test image: mariadb environment: - MY..
Docker의 docker-compose docker-compose docker-compose.yml파일은 도커 컨테이너를 run할 때, 필요한 옵션들을 모두 정의해두면 run을 하고싶을 때 터미널 CLI로 docker-compose up을 입력하면 docker-compose.yml파일에 정의해둔 옵션대로 도커 컨테이너가 run이 된다. 코드(옵션) version: "3"# docker의 버전 service: # 컨테이너 정보를 명시 db: # 서비스 명 container_name: mariaDB# 컨테이너 이름 image: mariadb# 이미지 repository명 environment:# 환경변수 정의 - MYSQL_ROOT_PASSWORD: **** port:# 포트번호 DB컨테이너를 다른 컨테이너와 연결하기 위해 지정 - 3306:33..
Docker의 기초 Docker Image Docker file FROM : Base 이미지(OS이미지 등)로 사용할 Layer를 가져오는 단계 LABEL : Meta 정보를 입력하는 부분 (빌드 자동화 등에 사용) RUN : 설치/설정 등을 위한 실행 부분 ENV : 환경 변수에 대한 선언 COPY : Local 디스크의 파일을 컨테이너 내부로 복사 ENTRYPOINT : 런타임시에 최종적으로 실행 되는 명령어 EXPOSE : Port를 외부로 mapping 하기 위한 정보 Build - Cached Image 이미 빌드된 이미지는 캐싱이 되어 있다. 따라서 재 빌드를 원할 시에는 전체 재빌드 시 --no-cache 옵션추가, 부분만 재빌드 하고싶다면 재빌드 원하는 부분에 스페이스 바등을 추가해주면 된다. Docker-c..
오늘 공부한 Docker 명령어들 docker command pull - 도커 이미지 다운로드 docker pull "image" images - 도커 이미지 list docker images run - 도커 적재 docker run -it "image" ps - 도커 프로세스 상태확인 docker ps (-a) attach - 정지된 도커 프로세스 탑재 docker attach [ps_id] logs - 도커 프로세스 로그 확인 docker logs [ps_id] tag - 도커 이미지변경 docker tag "name" "tag" commit - 도커 프로세스를 스냅샷 형태로 이미지로 저장 (권장되지않음) (도커 이미지를 개발하기 위한 테스트용도로 사용하는 것이 적당) docker commit [ps_id] "image":"tag" ..
Docker를 배워보자! 요즘 소프트웨어쪽에서 굉장히 HOT한 기술중에 하나로 devops쪽 인프라 계열에서 많이 쓰이지만, 현재 우리 소마팀에서는 개발환경 구축하는데 사용하려고 한다. 소마에서 지원해주는 gitlab과 도커 위에서 실행되는 젠킨스를 활용하여 빌드자동화를 시켜 개발환경에 도움을 주는 용도로 사용 하고있다. 아무래도 도커에 대해서 (사실 젠킨스도...) 알아야할것 같아서!! 소마에서 지원해주는 강의 비용으로 간단한 도커강의를 하나 신청해서 듣고 있는중..! 배운걸 블로그에도 하나씩 써보려한다. 일단 내가 이해한 도커를 설명해보자면, - 컨테이너라는 독립 환경이 존재하고 마치 VM처럼 컨테이너마다 별도의 환경을 구축 할 수 있다. - 하지만 컨테이너는 독립적인 OS(커널)그 자체를 새롭게 만드는 것이 아니고 도커엔진..