信创-.Net国产系统docker容器镜像制作
部分地区信创改造要求容器操作系统必须为国产系统。
因官方的docker镜像默认是使用ubuntu系统,不符合net程序在国产系统上运行条件。
统信容器云平台有提供相关.NET 相关镜像(https://uoscr.chinauos.com/image/71)。
仅提供了 2.1以及5.0版本,如果开发的是更高版本的程序则需要自己制作对应版本的镜像。
直接从阿里云仓库拉取已制作好的国产操作系统镜像拉取,考虑到Framework版本迁移验证码组件兼容问题,该镜像默认安装了libgdiplus插件。并且修复了yum仓库为阿里云。可以使用yum命令在线安装插件。
注:默认的官方镜像yum是无法正常使用的,需要自行添加源使用。
6.0版本:docker pull registry.cn-hangzhou.aliyuncs.com/uos20/netjx:v6.0.0
8.0版本:docker pull registry.cn-hangzhou.aliyuncs.com/uos20/netjx:v8.0.0
以下示例简单的制作过程。
1.准备需要的文件
(1)一个安装了docker的环境
(2)从官方下载对应版本的运行时,地址:https://dotnet.microsoft.com/zh-cn/download/dotnet
(3)创建一个Dockerfile文件
FROM registry.uniontech.com/uos-server-base/uos-server-20-1070a:latest as base
RUN mkdir -p /usr/share/dotnet
COPY dotnet/* /usr/share/dotnet/
RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet
registry.uniontech.com/uos-server-base/uos-server-20-1070a:latest
是统信官方的基础国产操作系统镜像,如需更其他国产系统镜像自行更换。
(4)将Dockerfile文件和运行时放到同一目录
2.制作运行时
在目录下执行docker命令制作镜像
docker build -it [自定义镜像名称]:[版本号] .
例如
docker build -it mynet:v8.0.0 .
以上可以快速制作一个符合要求的国产系统NET8运行时。制作其他版本镜像只需要下载不同版本的运行时即可。