ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

ASP.NET Core3.1在CentOS8打包Docker镜像

2020-12-01 17:59:08  阅读:212  来源: 互联网

标签:容器 ASP -- 端口 Core3.1 镜像 NET Docker docker


dockerfile文件
--=dockerfile=============================================================
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
COPY . /publish
WORKDIR /publish   
EXPOSE 80
CMD ["dotnet", "test.dll"]
--==============================================================

--=dockerfile参考=============================================================
#引入镜像,低版本 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 5000

#复制文件到工作目录
COPY . .
 
#ENV :配置系统环境变量,比如程序环境环境等在这里配置(开发、预发、线上环境)
#这里是配置程序运行端口,如果程序不使用默认的80端口这里一定要设置(程序运行端口)
ENV ASPNETCORE_URLS http://+:5000

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

#启动程序
ENTRYPOINT ["dotnet", "DotNetCore.API.dll"]
--==============================================================


一、CentOS8安装Docker

1.设置存储库(用于从存储库安装和更新Docker)
$ sudo yum install -y yum-utils

$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

2.安装Docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io
注:如果出现冲突的软件包则后面加上 “--allowerasing” 替换

3.启动Docker
sudo systemctl start docker

4.设置开机自启动
sudo systemctl enable docker

5.查看Docker版本
docker --version
docker version  注:查看完整版本信息

其它Docker常用命令:
--卸载旧版本命令:
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine


二、打包Docker镜像并运行容器

--构建docker镜像
docker build -t test .    注:test为自定义的镜像名称

--查看构建的镜像
docker image ls 

--创建并运行容器
docker run --name testapi -d -p 5001:80 test    注:testapi为自定义的容器名称,5001为外部端口与内部容器端口映射,test为镜像名称

--查看容器运行情况
docker ps -a


三、其它情况
如果发现请求不了,查看是否下面两种情况:

 1、对外映射的端口没开启。
 --查询端口号XXX 是否开启
firewall-cmd --query-port=XXX/tcp  
--开启端口
firewall-cmd --zone=public --add-port=XXX/tcp --permanent
--重启防火墙
firewall-cmd --reload


2、创建运行容器时监听的端口弄错了:
--查看容器运行日志
docker logs 容器ID

其它常用命令:
--根据镜像ID删除镜像
docker rmi 75835a67d134

--查看容器运行日志
docker logs  容器名称/容器ID
--停止运行容器
docker stop 容器名称/容器ID
--删除容器
docker rm 容器名称/容器ID
--重启容器服务
systemctl restart docker




 

标签:容器,ASP,--,端口,Core3.1,镜像,NET,Docker,docker
来源: https://blog.csdn.net/windowsliusheng/article/details/110442301

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有