·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> 实战CENTOS6.5安装docker并创建asp.net mvc 5 镜像,运行MVC 网站

实战CENTOS6.5安装docker并创建asp.net mvc 5 镜像,运行MVC 网站

作者:佚名      ASP.NET网站开发编辑:admin      更新时间:2022-07-23

实战CENTOS6.5安装docker并创建asp.net mvc 5 镜像,运行MVC 网站

Docker,容器,让研发、测试、生产同一环境,可在linux平台上混合使用java与net 程序

Centos6.5安装docker 参考http://my.oschina.net/kcw/blog/355612

rpm-ivhhttp://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-yinstalldocker-io

servicedockerstart

chkconfigdockeron

安装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/

执行效果图