.net core 部署 Docker 所遇到的几个问题

1.Connection reset by peer

造成这个问题的主要原因是在program.cs 文件中,未加入端口:

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseUrls("http://*:5000")
.UseStartup<Startup>();

然后重新生成静象,打包容器,就可以了。

2.时间问题

在容器里面获取到的时间,要比真实时间少。docker 里面的时区是外国的,不是中国的。

解决方法,在配置文件中加入时区设置

#crosoft/dotnet:1.0.0-core` 来构建我们的镜像
FROM microsoft/dotnet:latest

#拷贝项目publish文件夹中的所有文件到 docker容器中的publish文件夹中  
COPY . /api.moodfans.com

#设置工作目录为 `/publish` 文件夹,即容器启动默认的文件夹
WORKDIR /api.moodfans.com

#设置Docker容器对外暴露60000端口
EXPOSE 5000

#设置时间为中国上海
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#使用`dotnet Mood.API.dll`来运行应用程序
CMD ["dotnet", "demo.dll"]

问题3 ,在重启后,自动运行容器

在 docker run 命令中 加入 --restart always

如下 

docker run --name demoname -d -p 666:5000 --restart always imagename

 

转载于:https://www.cnblogs.com/kaifei/p/10395768.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值