abp框架angular 项目docker 手动部署到Linux环境中
1、https://aspnetboilerplate.com/Templates

2、后端项目发布,在publish中abp默认已经存在DockerFile文件

3、修改后端文件中的DockerFile文件

默认的值为 FROM microsoft/aspnetcore:2.0.1。但我当前的这个要求的是2.2的版本,在微软的docker官网上,根据自己实际项目需要更新这个值。
4、安装linux服务器,我自己用的是vmware虚拟机,linux版本是centos7,别忘了修改yum镜像源。
5、安装docker,并启动服务,不会了请自行Bing
6、如果你的虚拟机无法上网,请参考https://www.cnblogs.com/lishidefengchen/p/10564326.html
7、我本机是Windows环境,使用Putty里面的pscp工具来进行文件传输,pscp具体用法,请参考官方文档 https://the.earth.li/~sgtatham/putty/0.71/htmldoc/Chapter5.html#pscp-usage
8、把后台发布好的文件通过pscp拷贝到/root/目录下,具体哪个目录,请根据个人喜好而定
9、在linux中进入/root/publish目录下
$ cd /root/publish #publish 目录就是上一步发布出来的后台文件
10、查看本机IP地址,执行命令 ip addr
11、根据本机IP地址,修改发布文件中的配置文件
12、执行命令 docker build -t 镜像文件名 .
13、运行镜像,执行命令 docker run -d -p 21021:80 镜像文件名,参数 -d 该命令是后台静默运行指令,这样你还可以继续在终端进行其他操作,端口号21021,是配置文件中的端口号;端口号80是nginx服务的端口号
14、如果你的linux是带GUI的,你可以在本地访问一下试试,如果没有带界面,执行curl http://localhost:21021 尝试看看,或者在你的物理机的浏览器里试试能不能访问
15、如果发现不能访问,可能是虚拟防火墙的设置问题,具体设置不说了就,你直接关闭防火墙,一般情况就可以访问了
————前端部署开始—————
1、同样先要发布生产版本的文件,即执行ng build --prod
2、会发现在当前项目目录下生成了一个dist文件夹,里面的文件都是经过压缩的,这个就是发布出来的文件
3、这里需要注意的是,我们需要把前端项目中的DockerFile文件拷贝到dist目录下,否则docker生成的镜像不能执行,这个是我踩的坑
4、将发布的的文件通过pscp工具拷贝到linux环境下,例如:/root/angular/
5、在linux环境下,终端里执行cd /root/angular/dist,将当前目录指到dist目录下
6、同样建议根据当前环境的Ip修改配置文件
7、执行docker命令,docker build -t angular-web . 这样就生成了一个叫 angualr-web 的 image
8、执行docker命令,docker run -d -p 4200:80 angular-web 后台静默执行镜像文件 angular-web
9、浏览器访问,http://ip:4200
——————结束————————
生成的docker镜像也可以进入到容器中进行相关配置文件的修改操作,参考:https://www.cnblogs.com/lishidefengchen/p/10593929.html
abp框架angular 项目docker 手动部署到Linux环境中的更多相关文章
- mpdf部署到linux环境中遇到的问题
首先遇到的问题未:Error - mPDF requires mb_string functions. Ensure that PHP is compiled with php_mbstring.dl ...
- .NET 6 从0到1使用Docker部署至Linux环境
前言 作为一名.Net菜鸟开发者,平时对Linux接触的并不多,项目部署这一块都是运维小哥顶着,但是作为混迹在云原生项目组的人咱也不能什么都不知道,该掌握的知识还是要懂的,所以借着这次机会,梳理一下项 ...
- 【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
问题描述 实现部署NodeJS Express应用在App Service Linux环境中,并且使用Microsoft Authentication Library(MSAL)来实现登录Azure ...
- 【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
问题描述 在PHP项目部署在App Service后,上传文件如果大于1MB就会遇见 413 Request Entity Too Large 的问题. 问题解决 目前这个问题,首先需要分析应用所在的 ...
- ABP框架搭建项目系列教程基础版完结篇
返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 经过前面十二篇的基础教程,现在终于该做个总结了. 回顾 第一篇,我们建议新手朋友们先通过ABP官网的启动模板生成解决方案,因为这样 ...
- springboot 项目 docker化部署
最近公司项目需要docker化,项目所使用的框架是springboot,linux环境.第一次接触docker化方面的技术.做的时候,所接触的新知识比较多,留下此文,以便以后用到的时候快速入手. 修改 ...
- NET使用ABP框架搭建项目
NET使用ABP框架搭建博客项目(一) 有很多学NET开发的小伙伴建项目都比较茫然,我用什么开发?我都使用什么框架?我怎么起名字?种种问题,让一些低等.中等的工程师(甚至是高级工程师)很烦躁. 推荐一 ...
- 使用Docker 一键部署 LNMP+Redis 环境
使用Docker 部署 LNMP+Redis 环境 Docker 简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linu ...
- 使用 Docker LNMP 部署 PHP 运行环境
简介 Docker LNMP 是基于 Docker 的 PHP 集成开发环境. Github 地址:https://github.com/YanlongMa/docker-lnmp 包含软件 ngin ...
随机推荐
- std:: lower_bound std:: upper_bound
std:: lower_bound 该函数返回范围内第一个不小于(大于或等于)指定val的值.如果序列中的值都小于val,则返回last.序列应该已经有序! eg: #include <iost ...
- 【bzoj3942】[Usaco2015 Feb]Censoring
[题目大意] 有一个S串和一个T串,长度均小于1,000,000,设当前串为U串,然后从前往后枚举S串一个字符一个字符往U串里添加,若U串后缀为T,则去掉这个后缀继续流程. [样例输入] whatth ...
- android:gravity设置居中的问题
如果设置一个Button的android:gravity="center" android:text="按钮",则是设置了“按钮”两个字在Button中居中显示 ...
- mask rcnn训练自己的数据集参考文章(推荐)
最近用Mask_RCNN训练模型,下面几篇文章提供了不少帮助,汇总出来,方便以后查找,并向几位博主老师表示感谢 https://blog.csdn.net/qq_29462849/article/de ...
- Docker学习笔记_创建和使用Centos容器
实验:创建和使用Centos容器 步骤: 1.搜索 sudo docker search cen ...
- Luogu 3665 [USACO17OPEN]Switch Grass 切换牧草
BZOJ 4777 被权限了. 这道题的做法看上去不难,但是感觉自己yy不出来. 首先是两个结论: 1.答案一定是连接着两个异色点的一条边. 2.答案一定在最小生成树上. 感觉看到了之后都比较显然,自 ...
- Requests接口测试(三)
一.定制请求头 我们先来看一下,关于请求头的定制演示,相信了解http协议的小伙伴应该对请求头部headers请求头部并不陌生,那么作为实际工作中的我们,如果想自定义一些请求头的信息,我们应该怎么办呢 ...
- Linux 查看是64位还是32位
[root@VM_7_88_centos ~]# uname -a Linux VM_7_88_centos 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36: ...
- 结对编程 四则运算(java)(胡大华 黄绪明)
Github项目地址 https://github.com/yogurt1998/Myapp 项目需求 题目: 实现一个自动生成小学四则运算题目的命令行程序 功能 1.使用-n 参数控制生成题目的个数 ...
- URLRewrite 实现方法详解
所谓的伪静态页面,就是指的URL重写,在ASP.NET中实现非常简单首先你要在你的项目里引用两个DLL:ActionlessForm.dll.URLRewriter.dll,真正实现重写的是 URLR ...