반응형

docker 7

실행중인 도커 컨테이너에 추가 포트 오픈하기?!

아쉽지만 docker는 실행중인 컨테이너에 실시간으로 포트를 오픈하는 기능을 제공하지는 않는다. 아래와 같은 방법들로 다시 시작해야 한다. 1. 컨테이너의 변경 사항이 없다면.. stop 후 docker run에 -p 옵션을 추가하여 실행하면 될 것이다. 2. 컨테이너의 변경 사항이 있다면 docker commit를 사용해서 변경된 내용이 적용된 컨테이너를 만들어서 -p 옵션으로 재실행한다. docker stop running_containerdocker commit running_container new_containerdocker run -p newport:newport new_container

docker에 routable ip address 할당하기

docker는 컨테이너를 실행하면서 컨테이너의 가상 디바이스에 RFC 1918 에 기술된 내용에 따라 private 영역의, 임의의 IP를 할당한다. masquerading rule (표현이 재밌네 ^^)에 따라 할당한다고 하는데 상세한 건 "이 문서" 를 참고 바람. 어쨌든 중요한 건 ,host server에서 임의로 설정하기 때문에 이렇게 주어진 IP는 외부에서 알 수 없다. container에 포함된 각종 어플리케이션에서는, 자신의 IP를 얻어와서 외부의 container 혹은 솔루션에 알려주어도 외부에서는 해당 컨테이너로 접근할 수 없다. 외부에서 container 자신에게 접속하게 하려면 (routable ip address를 사용하는) host 서버의 IP주소와 docker run 시 -p 옵..

docker private registry에 ssl 인증 없이 등록하기

(ubuntu 기준) /etc/init.d/docker 의 DOCKER_OPTS에 --insecure-registry 정보를 추가하라고 되어 있는 안내가 있던데, 해보니 안됨. /etc/default/docker 파일을 열어 아래와 같이 추가 후 docker를 다시 시작하면 됨. DOCKER_OPTS="$DOCKER_OPTS --insecure-registry=localhost:5000" 음.. 어차피 같은 옵션 처리일텐데 왜 안되지. /etc/init.d/docker에 추가할 때 문법이 틀린거였나?? 알송달송...

docker private registry에 인증 절차 추가하기

"가장 빨리 만나는 Docker" 책을 참고함. 구조는 아래와 같이 잡는다. (내부) docker-registry nginx auth (외부)docker daemon 기본 registry를 내려받아 실행. sudo docker run -d --name docker-registry -v /tmp/registry:/tmp/registry registry:0.9.1(* port는 nginx에서 redirect될거라 오픈할 필요는 없음.) openssl로 key 제작 1. openssl genrsa -out 이름.key 20482. openssl req -new -key 이름.key -out.이름.csr (작성시 도메인은 registry.test.com로 맞춰야 한다.)3. openssl x509 -req -d..

docker로 실행시 redis db 파일을 host에서 바로 볼 수 있게..

최종 확인!! 아래와 같이 하면됨. 실행은 아래와 같이 한다. sudo docker run -d \ --name redis \ -p 6379:6379 \ -v /data_redis:/data:rw \ => 데이타를 이곳으로 넣을 거야 -v /data_redis/redis.conf:/etc/redis/redis.conf \ => conf 파일은 로컬에 있는 파일로 연동 redis:2.8.19 redis-server /etc/redis/redis.conf => 실행할 때 내가 지정한 conf로 실행 그리고 redis.conf는 기본 정보에서.. log 옵션을 찾아 /data 로 수정하면 됨. 이상!! ========================================================= 아래..

docker 1.4.1를 git에서 받아 직접 빌드하자.

최신 버전이 안받아져서 git에서 다운받아 빌드 시도. 폴더 하나 만들고.. (예.. docker_src) 들어가서 git init 입력. git clone https://github.com/docker/docker.git 하면 다운 받아짐. 해당 폴더에서 make 하면 빌드 시작. 빌드가 완료되면 docker_src/bundles/1.4.1-dev/binary에 빌드된 파일이 생성됨. /usr/bin으로 빌드된 파일 이동. ln -sf /usr/bin/docker-1.4.1-dev /usr/bin/docker 로 대체. docker version 실행하면 클라이언트 버전은 바뀌었지만, 서버 버전이 안바뀐 것을 확인할 수 있다. 아쉽게 아래와 같은 에러가 발생함. FATA[0000] Error respo..

반응형