實戰CENTOS6.5安裝docker並創建asp.net mvc 5 鏡像,運行MVC 網站


 

Docker,容器,讓研發、測試、生產同一環境,可在linux平台上混合使用JAVA與net 程序

 

Centos6.5安裝docker 參考http://my.oschina.net/kcw/blog/355612

 

rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

yum -y install docker-io

service docker start

chkconfig docker on

 

 

安裝asp.net mvc5鏡像請參考http://dockerone.com/article/164

但是這個教程做出來的鏡像只能跑個小DEMO,用MVC代碼則會報引用錯誤,應該要參考其中提到的https://registry.hub.docker.com/u/microsoft/aspnet/

結合二者最終的Dockerfile如下

 

FROM mono:3.10

 

ENV KRE_VERSION 1.0.0-beta2

ENV KRE_USER_HOME /opt/kre

 

RUN apt-get -qq update && apt-get -qqy install unzip

 

RUN curl -sSL https://raw.githubusercontent.com/aspnet/Home/v$KRE_VERSION/kvminstall.sh | sh

RUN bash -c "source $KRE_USER_HOME/kvm/kvm.sh \

&& kvm install $KRE_VERSION -a default \

&& kvm alias default | xargs -i ln -s $KRE_USER_HOME/packages/{} $KRE_USER_HOME/packages/default"

 

# Install libuv for Kestrel from source code (binary is not in wheezy and one in jessie is still too old)

RUN apt-get -qqy install \

autoconf \

automake \

build-essential \

libtool

RUN LIBUV_VERSION=1.0.0-rc2 \

&& curl -sSL https://github.com/joyent/libuv/archive/v${LIBUV_VERSION}.tar.gz | tar zxfv - -C /usr/local/src \

&& cd /usr/local/src/libuv-$LIBUV_VERSION \

&& sh autogen.sh && ./configure && make && make install \

&& rm -rf /usr/local/src/libuv-$LIBUV_VERSION \

&& ldconfig

 

ENV PATH $PATH:$KRE_USER_HOME/packages/default/bin

 

COPY . /app

WORKDIR /app

RUN ["kpm", "restore"]

 

EXPOSE 5004

ENTRYPOINT ["k", "kestrel"]

 

 

 

以下生成鏡像並啟動

 

docker build -t mvc .

docker run -t -d  -p 80:5004 mvc

 

 

其它相關命令

docker ps

docker stop

docker images

docker rmi

 

 

所需要的DEMO代碼在

https://github.com/aspnet/Home/

 

 

執行效果圖

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM