25.12、Dockerfile指南

这里介绍了如何定制自己的应用镜像,可以方便我们制作高性能的镜像。

如果想把自己的项目打包成镜像,就要为这个项目编写Dockerfile文件

详细文档

https://docs.docker.com/engine/reference/builder/

https://docs.docker.com/get-started/part2/

编写 Dockerfile (定制镜像)

# 基础镜像,基于什么语言/平台开发

FROM mcr.microsoft.com/dotnet/core/sdk:2.2

# 镜像信息

LABEL author="monk" email="monksoul@outlook.com" version="1.0"

# 创建一个工作目录(或者说是当前目录)

WORKDIR /app

# 拷贝所有文件到当前上下文目录

ADD . .

# 运行一条指令

RUN dotnet build "app.csproj" -c Release -o /app/push

# 切换到当前目录

WORKDIR /app/push

# 设置环境变量

ENV NAME=monk AUTHOR=monk

# 导出端口

EXPOSE 80

# 导出数据卷

VOLUME ["/uploads"]

# 构建完成后最后执行的命令

ENTRYPOINT [ "dotnet","app.dll" ]

一个简单Nginx的Dockerfile

执行构建

运行

一个简单的ASP.NET Core 项目 Dockerfile

创建一个dotnet core 项目并发布到

Dockerfile 代码如下

执行构建

运行

多版本共存

如果我们修改了代码,我们只需要重新构建一个新版本即可,如

最后更新于

这有帮助吗?