由于我们的微服务架构基于.net core 3.1,部署构建采用了Docker技术,因此它必然需要一款底层Linux操作系统。这里选用了CentOS,因为虚拟机采用的也是CentOS,而docker也基于此,可以更好的发现问题,不会因为操作系统的不同而导致奇奇怪怪的问题。里面会给出打包CentOS镜像的源码哦~~~
打包CentOS镜像
基于CentOS的.net core镜像,官方并没有给出来。因此,如果需要只能自己打包了,这里给出部分片段,抛转引玉。
镜像来自官方centos 7, 时区增加了 上海时区 Asia/Shanghai, 除了没有安装libgdiplus和字体外,几乎可以完美运行所有.net core程序。
FROM centos:7
# This image provides a .NET Core 3.1 environment you can use to run your .NET
# applications.
ENV HOME=/opt/app-root \
PATH=/opt/app-root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
DOTNET_APP_PATH=/opt/app-root/app \
DOTNET_DATA_PATH