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环境中的更多相关文章

  1. mpdf部署到linux环境中遇到的问题

    首先遇到的问题未:Error - mPDF requires mb_string functions. Ensure that PHP is compiled with php_mbstring.dl ...

  2. .NET 6 从0到1使用Docker部署至Linux环境

    前言 作为一名.Net菜鸟开发者,平时对Linux接触的并不多,项目部署这一块都是运维小哥顶着,但是作为混迹在云原生项目组的人咱也不能什么都不知道,该掌握的知识还是要懂的,所以借着这次机会,梳理一下项 ...

  3. 【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤

    问题描述 实现部署NodeJS Express应用在App Service Linux环境中,并且使用Microsoft Authentication  Library(MSAL)来实现登录Azure ...

  4. 【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法

    问题描述 在PHP项目部署在App Service后,上传文件如果大于1MB就会遇见 413 Request Entity Too Large 的问题. 问题解决 目前这个问题,首先需要分析应用所在的 ...

  5. ABP框架搭建项目系列教程基础版完结篇

    返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 经过前面十二篇的基础教程,现在终于该做个总结了. 回顾 第一篇,我们建议新手朋友们先通过ABP官网的启动模板生成解决方案,因为这样 ...

  6. springboot 项目 docker化部署

    最近公司项目需要docker化,项目所使用的框架是springboot,linux环境.第一次接触docker化方面的技术.做的时候,所接触的新知识比较多,留下此文,以便以后用到的时候快速入手. 修改 ...

  7. NET使用ABP框架搭建项目

    NET使用ABP框架搭建博客项目(一) 有很多学NET开发的小伙伴建项目都比较茫然,我用什么开发?我都使用什么框架?我怎么起名字?种种问题,让一些低等.中等的工程师(甚至是高级工程师)很烦躁. 推荐一 ...

  8. 使用Docker 一键部署 LNMP+Redis 环境

    使用Docker 部署 LNMP+Redis 环境 Docker 简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linu ...

  9. 使用 Docker LNMP 部署 PHP 运行环境

    简介 Docker LNMP 是基于 Docker 的 PHP 集成开发环境. Github 地址:https://github.com/YanlongMa/docker-lnmp 包含软件 ngin ...

随机推荐

  1. 【NOIP2008】传纸条

    [描述] Description 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就 ...

  2. Lambda03 方法引用、类型判断、变量引用

    1 方法引用 1.1 方法引用的好处 方法引用结合 Lambda 可以引用已存在的方法,省略很多编码,而且可读性更强,它可以自动装配参数与返回值. 在编写lambda表达式的时候可以通过方法引用的方式 ...

  3. ROS naviagtion analysis: costmap_2d--Layer

    博客转载自:https://blog.csdn.net/u013158492/article/details/50493113 这个类中有一个LayeredCostmap* layered_costm ...

  4. Entity Framework Tutorial Basics(42):Colored Entity

    Colored Entity in Entity Framework 5.0 You can change the color of an entity in the designer so that ...

  5. C# winform中Setting.settings 相关知识点

    1.在Settings.settings文件中定义配置字段.包含字段名.类型.范围.值四部分的属性. 字段名.类型和值类似编程中字段的定义一样使用,不再过多的解释.重点讲一下”范围“字段的含义与区别. ...

  6. (转)Asp.Net生命周期系列三

    原文地址:http://www.cnblogs.com/skm-blog/p/3178862.html 上文讲到了HttpRunTime主要做了三个事情,我们先回忆一下. 第一:雇佣了项目经理(Htt ...

  7. Highway Networks(高速路神经网络)

    Rupesh Kumar Srivastava (邮箱:RUPESH@IDSIA.CH)Klaus Greff (邮箱:KLAUS@IDSIA.CH)J¨ urgen Schmidhuber (邮箱: ...

  8. 扫描工具——Meterpreter

    Meterpreter是Metasploit框架中的一个杀手锏,通常作为利用漏洞后的攻击载荷所使用,攻击载荷在触发漏洞后能够返回给用户一个控制通道.当使用Armitage.MSFCLI或MSFCONS ...

  9. springboot调用微信的jscode2session报JSONObject异常

    问题背景: 服务器为Centos6.5 JDK:OpenJDK1.7 tomcat7 项目为微信小程序api的后端代码,解密用户信息,代码是采用springboot写的 异常信息: 代码: json异 ...

  10. 使用IneliJ IDEA 2016将Java Web项目导出为War包

    本文记录使用IDEA导出war包的过程以及碰到问题的解决办法 虽说现在改用IDEA进行开发了,但还是用eclipse打war包 -.囧 这样下去不是办法... 于是今天就试着使用IDEA进行打包. 项 ...