ASP.NET Core 部署在Docker容器当中(1)
一、前言
在公司新项目中,果断选择使用asp.net core,通过实践学习一系列技术栈:docker、docker-nginx、docker-compose、Jenkins,本文主要是介绍如何将项目部署在Docker当中。
二、环境说明和使用工具
- Linux version 5.4.0-42
- Ubuntu 20.04.1 LTS
- Docker 19.03.12
- ASP.NET Core 3.1
- MobaXterm_Portable_v20.3
三、Docker部署
docker安装命令如下:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
查看docker是否安装成功:
docker -v
在项目中添加文件名称为dockerfile文件,切记文件没有后缀名!
dockerfile文件内容 此镜像支持SQL Server 2008 R2 SP3 版本
#添加.nencore3.1基础镜像
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-bionic AS base
#容器工作目录
WORKDIR /app #指定项webapi或mvc站点的内部启动端口,默认是80
#ENV ASPNETCORE_URLS http://+:50001 #暴露docker容器端口
EXPOSE 9000 #拷贝发布目录下的所有文件到容器的工作根目录
COPY . .
#COPY ./ ./ #容器入口点
ENTRYPOINT ["dotnet", "WebApplication2.dll"]
选中项目右键发布,选择文件系统。
将发布得项目文件使用MobaXterm_Portable工具上传到服务器中。
需要在服务器上安装SSH。
sudo apt-get install sshd
开启SSH服务
service sshd start
防火墙中添加22端口号
sudo ufw allow 22
查看端口
Sudo ufw status
打开Mob工具,右键New Session,输入IP地址通过SSH连接到服务器。
右键新建文件夹,将项目发布文件上传到文件夹中。
进入到项目文件所在文件夹中
cd /home/cs-root/Server/Test/
构建镜像文件
docker build -t 镜像名称 .
查看镜像
docker images
创建容器
docker run -d -p 9000(对外端口):80(程序端口) 镜像名称
查看正在运行的容器
docker ps -a
博客新手,如有不对的地方请大佬们指出。
到此docker 部署ASP.NET Core项目就结束了,但是每次项目更新都要停止容器、删除容器、删除镜像和重新构建镜像等重复工作,感觉好累阿,下一文章将介绍使用docker-compose管理镜像和容器,一个指令即可更新镜像和运行容器。
ASP.NET Core 部署在Docker容器当中(1)的更多相关文章
- 如何将 asp.net core 应用进行 docker 容器部署
asp.net core 部署在 docker 容器中比较简单,但常因asp.net core程序发布的问题造成容器无法正常启动.现在把详细的操作的步骤记录如下: 一.asp.net core web ...
- Linux下将.Asp Core 部署到 Docker容器中
我们来部署一个简单的例子: 将一个简单的.Aps Core项目部署到Docker容器中并被外网访问 说明: 下面的步骤都是建立在宿主服务器系统已经安装配置过Docker容器,安装Docker相对比较简 ...
- asp.net core 发布到 docker 容器时文件体积过大及服务端口的配置疑问
在 asp.net core 发布时,本人先后产生了3个疑问. 1.发布的程序为什么不能在docker容器中运行 当时在window开发环境中发布后,dotnet xxx.dll可以正常运行:但放入d ...
- 我用asp.net core 部署到docker遇到的问题
1.怎么部署 我是用文件的形式先发布出来,然后把文件拷贝到服务器上部署到docker中去. 2.端口映射 根据查找到的资料,dockerfile 是不支持指定映射服务器端口的,只能在run的时候用-p ...
- 阿里云容器服务与ASP.NET Core部署:用 docker secrets 保存 appsettings.Production.json
这是我们使用阿里云容器服务基于 docker 容器部署 asp.net core 应用遇到的另一个问题 —— 如果将包含敏感信息的应用配置文件 appsettings.Production.json ...
- 从头认识一下docker-附带asp.net core程序的docker化部署
从头认识一下docker-附带asp.net core程序的docker化部署 简介 在计算机技术日新月异的今天, Docker 在国内发展的如火如荼,特别是在一线互联网公司, Docker 的使用是 ...
- 系列13 docker asp.net core部署
一.介绍 本篇完整介绍asp.net core web api如何部署到docker容器中,并通过外部访问web api服务.在编写完成dockerfile之后,可以通过docker [image ...
- .NET core 部署到Docker +Docker Protainer管理实现
.NET core 部署到Docker +Docker Protainer管理实现 上次说到将.net core的应用程序发布到Linux中(https://www.cnblogs.com/Super ...
- .net4.5部署到docker容器
.net4.5部署到docker容器 部署到windows容器 部署到linux容器 部署到windows容器 由于.net本身就是运行在windows平台的,所以它与windows容器也是更加适合, ...
- 【Step By Step】将Dotnet Core部署到Docker下
一.使用.Net Core构建WebAPI并访问Docker中的Mysql数据库 这个的过程大概与我之前的文章<尝试.Net Core—使用.Net Core + Entity FrameWor ...
随机推荐
- [Linux Kernel 源码分析] 通过vconfig配置vlan的系统调用/驱动流程分析
By YuCloud (蓝天上的云℡ - 博客园 https://www.cnblogs.com/yucloud/) 转载请注明出处 vconfig源码分析 vlan/vconfig.c at mas ...
- CH579-Lwip-2.12移植
代码可以参考以下链接:https://gitee.com/maji19971221/lwip-routine Lwip可以在以下链接下载:http://download.savannah.gnu.or ...
- [WPF]鼠标移动到Button颜色改变效果设置
代码 <Style x:Key="Button_Menu" TargetType="{x:Type Button}"> <Setter Pro ...
- SQL29 计算用户的平均次日留存率
SQL29 计算用户的平均次日留存率 困难 通过率:48.58% 时间限制:1秒 空间限制:256M 描述 题目:现在运营想要查看用户在某天刷题后第二天还会再来刷题的平均概率.请你取出相应数据. 示例 ...
- ios网络协议从http变成https
最近发了一个很蛋疼的事,iphone16.x以后的系统浏览器自动将http请求切换为https请求了 工程自测 1.在ihone14 pro max,iOS16.1的手机上用http请求是失败的,在i ...
- 【Redis技术专区】「优化案例」谈谈使用Redis慢查询日志以及Redis慢查询分析指南
前提介绍 本篇文章主要介绍了Redis的执行的慢查询的功能的查询和配置功能,从而可以方便我们在实际工作中,进行分析Redis的性能运行状况以及对应的优化Redis性能的佐证和指标因素. 在我们5.0左 ...
- linux命令与公私钥
昨日内容回顾 etc目录 配置相关 /etc/profile 环境变量文件 /etc/motd 开机欢迎界面 usr目录 程序相关 四种安装软件的方式 1.yum安装 自动解决依赖性问题 2.rap安 ...
- 为啥要对jvm做优化?
摘要:在jvm中有很多的参数可以进行设置,这样可以让jvm在各种环境中都能够高效的运行.绝大部分的参数保持默认即可. 本文分享自华为云社区<为什么需要对jvm进行优化,jvm运行参数之标准参数& ...
- 2023牛客寒假算法基础集训营5 A-L
比赛链接 A 题解 知识点:前缀和,二分. 找到小于等于 \(x\) 的最后一个物品,往前取 \(k\) 个即可,用前缀和查询. 时间复杂度 \(O(n + q\log n)\) 空间复杂度 \(O( ...
- 【已解决】将jsp文件在浏览器打开直接出现代码,在浏览器出现本地地址,tomcat报错
问题背景: 导入了一个项目直接打开可以,但是想跟一遍代码,把配置文件全部整理成为一个springmvc的基础配置文件 跟着配置到自己tomcat就不管怎样都是下面的截图 希望可以帮到一起报错的朋友快 ...