본문 바로가기
Programming/asp.net core

Docker 에서 asp.net core 구동

by woody.choi 2016. 11. 30.
반응형

Docker 에서 asp.net core 활용

서버에 Docker가 이미 설치되어있다고 간주하고 시작하도록 한다.

Dockerfile 생성

이미지를 생성할 폴더를 만든다

$ mkdir helloworld
$ cd helloworld
$ nano Dockerfile

다음의 내용을 파일명 Dockerfile 을 생성하여 붙여 넣는다.

————————————————————————————————————————————
# 기본이미지를 ms에서 가져온다
FROM microsoft/dotnet

# git 설치
RUN apt-get install git -y

# 소스코드를 넣을 폴더 생성
RUN mkdir repositories

# 작업 폴더로 설정
WORKDIR repositories

# git에서 소스 가져오기
RUN git clone https://github.com/cmendible/aspnet-core-helloworld.git

# 작업 폴더로 설정
WORKDIR aspnet-core-helloworld/src/dotnetstarter

# 5000 포트를 개방    
EXPOSE 5000

# nuget 패키지로 페키지 업데이트
RUN dotnet restore

# dot net 시작
ENTRYPOINT dotnet run
————————————————————————————————————————————

Docker 이미지 생성

Docker 이미지 생성
$ sudo docker build -t hello_world .

생성된 이미지를 확인한다
$ sudo docker image

hello_world가 생성된 것을 확인 할 수 있다 Docker Image

이미지 테스트

생성된 이미지를 이용하여 컨테이너 생성을 테스트한다. 또한 컨테이너의 5000 포트를 호스트의 5000 포트와 연결한다
$ sudo docker run -it -p 5000:5000 hello_world

컨테이너 생성

컨테이너를 데몬 프로세스로서 실행시킨다.
$ sudo docker run -t -d -p 5000:5000 hello_world

반응형