Docker 이미지 배포 및 매핑
Docker 이미지 배포
1. Docker for Windows Installer를 통해서 설치(Windows에서만 가능)
2. docker shell을 이용하거나 windows10의 PowerShell을 사용하여 docker 설치 여부 확인
- docker 버전확인 명렁어 : docker --version
3. ubuntu16.04의 환경에서 설치를 위해서 ubuntu16.04 컨테이너 실행
- 명령어 : docker run -it -p 80:80 ubuntu:16.04 bash
- run명령어를 사용할경우 해당 이미지가 없으면 가져온 후 컨테이너를 생성하고 시작
- 옵션
-d |
백그라운드 모드 |
-p |
포트 매핑 |
-v |
디렉토리 매핑 |
--name |
생성되는 컨테이너 이름 지정 |
--rm |
프로세스 종료시 컨테이너 제거 |
-it |
터미널 입력을 위한 옵션 |
4. 터미널 내에서 작업 필요한 파일 설치 (apt-get install xxx 등)
5. 모든 필요한 파일들 설치 후 해당 이미지 만들기
- docker commit -m "설명" -a "(사용자정보)" (container id) (사용자아이디)/배포명:태그명
- ex) docker commit -m "initialize" -a "neverkal" asdf1232321asf neverkal/ubuntu:apache2
6. 만든 이미지 docker hub에 등록
- docker login (해당 계정으로 로그인)
- docker push <Docker Hub 사용자 계정>/<이미지 이름>:<태그>
- docker push neverkal/centos7:python3(로그인한 계정으로 docker hub에 push)
Docker Windows 디렉토리(폴더) 매핑
1. Docker for Windows-setting에서 Shared Drivce에서 매핑할 드라이브를 체크 후 apply 클릭
2. docker run 옵션에 -v 옵션을 사용하여 매핑한다.
- ex) docker run -dit --name test -p 80:80 -v C:\work\test:/work neverkal/ubuntu:apache2 bash
3. docker 실행 : docker start test
4. 컨테이너 내부에서 지정한 윈도우 폴더와 매핑이 정상적으로 되어있는지 확인
(매핑이 정상적으로 이루어지지 않을 경우 Docker for Windows의 세팅에서 Shared Drive에서 Apply를 다시 적용하고 정상적으로 적용되는지 확인한다.
기타 명령어
docker pull centos:7
docker run -i -t centos:7 /bin/bash
docker ps -a
docker rm 컨테이너아이디
docker images
docker rmi 470671670cac
docker exec -it cent7py2 /bin/bash