在看该文章前,你需要对Docker有所了解。
1、创建WebApp应用程序
我使用的是.Net Core 1.0.1版本,创建一个MVC应用程序,并添加对Redis的引用。因为这些很基础,也很简单,这里就不详细说明了,特别提一下有关多站点会话保持问题,这里介绍两种方式,一种方式就是使用我博客里所说的方法 http://www.cnblogs.com/anech/p/6873604.html,还有一种方式就是采用Nginx代理的会话保持方案。
2、创建WebApp的Dockerfile文件
FROM microsoft/aspnetcore:1.0.1
ENTRYPOINT [
"dotnet"
,
"TestCentOS.dll"
]
ARG source=.
ARG port=80
ENV ASPNETCORE_URLS http:
//+:$port
WORKDIR /app
EXPOSE $port
COPY $source .
|
大意就是:使用microsoft/aspnetcore:1.0.1基础镜像创建一个新的镜像,镜像在运行的时候执行dotnet TestCentOS.dll命令启动程序程序,把当前目录下的文件复制到镜像中,并暴露一个指定的端口,如果未指定使用默认80端口。
3、创建Nginx的Dockerfile文件
FROM nginx
EXPOSE 80
COPY
default
.conf /etc/nginx/conf.d/
|
大意是:基于nginx基础镜像创建一个新的镜像,对外暴露80端口,并把当前目录下的default.conf复制到镜像的/etc/nginx/conf.d/目录下。
default.conf文件内容:
upstream webapp{
|