Container 62

[Docker CE] Docker-machine 기본 명령어, GCP에 docker host 프로비저닝

Docker-machine Docker-machine은 가상환경이나 클라우드 등에서 호스트OS의 커맨드만으로 docker를 사용하기 위한 가상 환경을 생성해 줍니다. 즉, 원격 시스템에서 docker host를 프로비저닝하고 관리할 수 있는 기능을 갖추고 있습니다. GCP(Google Cloud Platform)에 Docker Host 프로비저닝 들어가기에 앞서, GCP에서 docker host 프로비저닝 방법은 docs.docker 홈페이지에서 제공 합니다. (https://docs.docker.com/v17.12/machine/drivers/gce/#example) 또한 구축하기 전에 아래 패키지들이 설치되어 있어야 합니다. Docker CE (https://nirsa.tistory.com/45?ca..

Container/Docker 2020.01.25

[Docker CE] Docker-machine 설치 방법

Docker-machine Docker-machine은 가상환경이나 클라우드 등에서 호스트OS의 커맨드만으로 docker를 사용하기 위한 가상 환경을 생성해주고 관리할 수 있는 기능을 제공해 줍니다. 즉, 원격 시스템에서 docker host를 프로비저닝하고 관리할 수 있는 기능을 갖추고 있습니다. docker-machine의 설치 방법은 github에 공개되어 있으며 아래 명령어를 입력하시면 됩니다. 단, 설치 전 Docker CE가 설치되어 있어야 docker-machine 설치가 가능 합니다. (참고 : https://github.com/docker/machine/releases) # OS X $ curl -L https://github.com/docker/machine/releases/downlo..

Container/Docker 2020.01.23

[Docker CE] docker-compose 기본 명령어 정리

리눅스에서 docker-compose 명령어를 사용하려면 docker와는 별개로 docker-compose가 설치되어 있어야 합니다. (설치 방법 : https://nirsa.tistory.com/76?category=868315) 버전 확인 docker-compose --version docker-compose up 컨테이너를 생성 및 실행 합니다. docker-compose up [옵션] [서비스명] 옵션 설명 -d 백그라운드 실행 --no-deps 링크 서비스 실행하지 않음 --build 이미지 빌드 -t 타임아웃을 지정(기본 10초) 참고로 특정 서비스들의 경우 백그라운드로 실행하지 않으면 컨테이너가 생성 및 실행되며 바로 종료될 수 있습니다. docker-compose ps 현재 동작중인 컨테이..

Container/Docker 2020.01.22

[Docker CE] docker-compose 문법 간단 정리 (2) (ports, expose, depends_on, nevironment, env_file, container_name, labels, volumes, volumes_from)

1편 (image, build, command, entrypoint, links) : https://nirsa.tistory.com/79?category=868315 5. ports ports는 호스트OS와 컨테이너의 포트를 바인딩 시켜줍니다. 참고로 아래 docker-compose.yml을 작성할 때 주의해야할 점이 있는데 "8080:8080"와 같이 작성할 경우 반드시 따옴표와 함께 사용하여 문자열로 지정 해주어야 합니다. 형식은 "host:container" 또는 "container" 등으로 사용 됩니다. 아이피를 지정해준다거나, 포트의 범위 등 설정이 가능하고 자세한 설정들은https://docs.docker.com/compose/compose-file/ 를 참고해주세요. * 이 명령은 docke..

Container/Docker 2020.01.22

[Docker CE] docker-compose 문법 간단 정리 (1) (image, build, command, entrypoint, links)

docker-compose는 여러개의 컨테이너 설정 내용을 하나의 파일에 모아서 사용하는 YAML 파일 입니다. 이 docker-compose는 컨테이너의 서비스(services:), 네트워크(networks:), 볼륨(volumes:)을 정의 합니다. docker-compose의 버전에 따라 여러 차이가 있기 때문에 작성할 때엔 아래처럼 버전을 정의 해주는것이 좋습니다. version: "3" docker compose의 기본적인 실행/중지 명령은 docker-compose up, docker-compose stop 이고, 실행 시키면서 빌드를 진행할 때에는 docker-compose up --build 를 사용 합니다. 1. image docker-compose 안에서 베이스 이미지를 지정할 수 있습..

Container/Docker 2020.01.22

[Docker CE] gcloud 자격 증명 저장소 에러 ( docker.errors.DockerException: Credentials store error: StoreError('Credentials store docker-credential-gcloud exited with "".',) failed to execute script docker-compose )

gcloud 자격 증명 저장소 에러 ( docker.errors.DockerException: Credentials store error: StoreError('Credentials store docker-credential-gcloud exited with "".',) failed to execute script docker-compose ) 는 docker의 자격 증명 처리에서 설정이 엉키게 되어 발생 합니다. root 계정으로 사용중일 경우 /root/.docker/config.json 파일에서 문제를 확인할 수 있고 아래 명령을 입력하여 config.json 파일을 다시 정상 상태로 복구할 수 있습니다. docker logout docker login gcloud auth activate-serv..

Container/Docker 2020.01.21

[Docker CE] Centos 7 docker-compose 설치

Centos7 docker-compose 설치 방법 이고 root 계정으로 진행해야 합니다. (root계정이 아닐 시 sudo 사용) curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # 바이너리 실행 권한 부여 chmod +x /usr/local/bin/docker-compose # docker-compose 설치되었는지 확인 docker-compose --version 만약 바이너리 실행 권한 부여할 때의 명령(chmod ~)이 실패 했다면 아래와 같이 심볼릭 링크 설정을 해주시면 됩니다. ln -s ..

Container/Docker 2020.01.21

[Docker CE] GCP Private Registry 구축 (Google Cloud Platform 사용)

GCP(Google Cloud Platform)을 사용한 Docker Private Registry 구축 입니다. GCP에 미리 계정을 등록 해두어야 하고 구글 계정에 신용카드 또는 계좌가 등록 되어 있으면 편합니다. (1년간 무료로 이용이 가능하고, 신용카드 또는 계좌를 등록하는 이유는 자동 가입을 막기 위해서라고 합니다. 1년 후 자동으로 유료버전으로 전환되지 않습니다.) 무료 버전 등록은 http://cloud.google.com 에서 구글 계정 로그인 후 무료로 실행하기를 눌러서 진행 하시면 됩니다. 1. Google Container Registry API 연동 GCP에서 Docker 이미지를 관리할 수 있는 Google Container Registry API를 제공 합니다. GCP 무료 버전..

Container/Docker 2020.01.21

[Docker CE] Docker Private Registry 구축(Docker Registry, WEB 사용)

Private Registry는 개인 저장소라고도 하며 Docker hub에서 제공하는 registry 이미지를 사용 해 컨테이너에서 이미지를 로컬 저장하는 방식 입니다. 하지만 GUI 환경을 지원하지 않는데, Docker hub에 GUI로 볼 수 있는 웹이 배포되어 있습니다. 웹 설정은 가장 마지막에 다루겠습니다. 그리고 Pricate Registry를 다룰때엔 반드시 최소한 볼륨을 이용해 데이터를 보존 하거나, 스토리지 또는 데이터 백업등을 통하여 데이터를 관리 해야 합니다. Private Registry는 registry 컨테이너가 삭제되면 모든 데이터가 삭제 됩니다. 1. Docker Private Registry 환경 구축 # Docker hub 공식 저장소에서 registry 이미지 다운로드 ..

Container/Docker 2020.01.20

[Docker CE] Automated Build를 이용한 Docker 이미지 build

Docker Automated Build를 이용한 Dockerfile로부터 이미지 자동 Build 입니다. (관리툴인 GitHub과 Bitbucket를 이용한 방법이 있는데, 이 글에서는 GitHub을 사용 합니다) 1. Docker Hub Repository 생성 http://hub.docker.com 에 접속하여 로그인 후 상단의 Repositories → Create Repository 클릭 합니다. Repository의 이름을 적어주고 이번 글에서는 Public으로 진행하기에 체크, Build Settings가 써있는곳에 고양이 모양이 있는것이 GitHub인데 누르고 로그인하여 연결 해줍니다. (GitHub 계정이 없다면 생성해야 합니다.) 연결이 완료 됬다면 Create 를 눌러서 생성 해줍니다..

Container/Docker 2020.01.20