1. 拷贝。net程序发布文件夹到linux
1.1配置好dockfile文件
#引入镜像,低版本 docker 去掉 AS base
#换成别人做的阿里镜像
#FROM registry.cn-hangzhou.aliyuncs.com/newbe36524
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
#配置工作目录 相当于cd
WORKDIR /app
#暴露容器端口,此端口与程序运行路径一致,可
EXPOSE 5004
#复制文件到工作目录
COPY . .
#ENV :配置系统环境变量,比如程序环境环境等在这里配置(开发、预发、线上环境)
#这里是配置程序运行端口,如果程序不使用默认的80端口这里一定要设置(程序运行端口)
ENV ASPNETCORE_URLS http://+:5004
#设置时间为中国上海,默认为UTC时间
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#启动程序
ENTRYPOINT ["dotnet", "WebApplication2.dll"]
2 通过dockfile编译成镜像
2.1 进入dackfile所在目录
执行以下命令
docker build -t apitest:v1 . --network=host
build 完成后可以通过命令查看镜像
docker images
3运行镜像的实例到容器中
docker run -d -p 9999:5004 --name myfst apitest:v1
4开放端口
firewall-cmd --zone=public --add-port=9999/tcp --permanent # 开放9999端口
firewall-cmd --reload # 配置立即生效