快点关注我们吧

作者介绍

王晓东,从事工业物联网行业多年,深入了解纺织、汽车零部件等制造业业务。开发过MES、WCS、SCADA、智能产线、质量追溯、工业通讯、linux网关等系统。对跨平台部署、运维有一定经验。使用WTM框架提高了40%的开发效率,WTM框架作为学习.Net跨平台的起点也是非常推荐的。


1. 什么是WTM框架?

  一个快速、灵活、社区活跃、最最最最高效的.netcore 后台管理系统。详见 https://wtmdoc.walkingtec.cn/

  欢迎大家付费支持WTMPlus,反哺社区(我已充值,还未使用,等vue3版本)。

2. 通过本文可以实现什么?

通过使用主流的开源软件或技术实现WTM项目自动化部署到ubuntu系统。

  1. 通过Gitee管理WTM项目代码

  2. 通过Jenkins获取代码提交事件,从而生成WTM镜像

  3. 容器运行WTM镜像

3. 你需要准备什么?

  1. 准备一台Ubuntu云服务器(或虚拟机安装花生壳,因为要用到外网)

  2. ubuntu、git、docker的基础知识(没了解过也无所谓,我会手摸手)

  3. 准备好耐心,本文适合对ubuntu不是很熟悉,但是想把WTM运行在Ubuntu上的朋友。包括git、gitee配置、jenkins安装配置部署,很多都是一劳永逸的,坚持下来,会有收获

4. 安装配置基础环境 

  4.1关于gitee

4.1.1 什么是gitee

国产免费git源码管理平台

4.1.2 gitee可以干什么

多人协作 、代码备份、触发自动化构建(webhook)

4.1.3 下载安装git https://git-scm.com/download/win

4.1.4 下载安装tortoisegit及语言包 https://tortoisegit.org/download/

4.2  git管理WTM代码

4.2.1 新建WTM项目

简单起见,先使用sqlite

4.2.2 gitee注册、登陆

4.2.3 gitee管理wtm代码

新建代码仓

复制代码仓地址

克隆代码仓,输入代码仓地址

wtm代码放入git所在文件夹

提交代码

推送代码

刷新gitee页面,可以看到提交的代码

4.3 关于docker

4.3.1 什么是docker

将WTM和.netcore运行时打包在一起,生成一个镜像,从而运行在任何操作系统中

4.3.2 docker安装

sudo curl -fsSL https://get.docker.com | bash -s docker

4.4 关于Jenkins

4.4.1 jenkins

基于java的持续集成工具,用来实现自动获取gitee提交事件,拉去代码、编译代码、构建WTM镜像、运行WTM镜像。

4.4.2 jenkins安装

注意这里没有持久化。

sudo docker run -d --restart always --name testjenkins -p 8888:8080 -p 50001:50000 -e TZ="Asia/Shanghai" \
-v /var/run/docker.sock:/var/run/docker.sock -v $(which docker):/usr/bin/docker -d jenkins/jenkins:lts
进入jenkins容器

1

cat /var/jenkins_home/secrets/initialAdminPassword

查看jenkins初始密码

1

cat /var/jenkins_home/secrets/initialAdminPassword

修改docker权限

1

sudo chmod 777 /var/run/docker.sock

访问主机9090端口,用户名jenkins 密码是刚刚获取到的

系统管理=>插件管理=>高级=>最下方升级站点 输入  https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

4.4.3 安装gitee插件

4.4.4 gitee新增令牌

 4.4.5 jenkings 配置gitee插件

系统管理=>系统配置

添加Gitee凭据,用自己的gitee用户名和密码

4.4.6 新建任务

生成一个webhook密码,先记下来

构建新增shell,等下步执行完后再保存

 View Code

配置gitee的webhook,保存后,再保存上一步的jenkins

5.修改WTM源码

wtm MVC项目配置文件新增,以防止其余的多语言看起来比较乱

<SatelliteResourceLanguages>zh-Hans,en</SatelliteResourceLanguages>

6.修改Dockerfile

 View Code

7. 提交、推送源码

8. 查看jenkins

  耐心等待,第一次比较慢,看网络环境要10-20分钟左右,后面就会很快,因为有了基础镜像

9. 查看wtm页面

访问云服务器的8888端口(别忘了打开防火墙),可以看到经典的WTM桌面啦。

重点是我们修改过的页面

WTM框架使用技巧之:CI/DI(持续集成/持续部署)相关推荐

  1. 使用Jenkins在Azure Web App上进行ASP.NET Core应用程序的持续集成和部署(CI/CD)–第1天

    目录 介绍 路线图 DevOps 持续集成 持续部署 Jenkins Azure Web App服务 主题 先决条件 安装Jenkins 先决条件 下载并安装 Jenkins插件 让它运行 安装自定义 ...

  2. 持续集成/持续交付(CI/CD)

    目录 全面了解持续集成/持续交付 概览 "持续"是什么意思? 什么是"持续交付管道"? 持续交付管道是如何工作的? "快速失败"是什么意思? ...

  3. 使用Jenkins在Azure Web App上进行ASP.NET Core应用程序的持续集成和部署(CI/CD)–第4天

    目录 主题 路线图 Jenkins 先决条件 使用Jenkins Azure Pipeline在Azure上的ASP.NET Core应用程序的CI/CD 创建新的管道作业 添加参数 添加管道脚本 运 ...

  4. 使用Jenkins在Azure Web App上进行ASP.NET Core应用程序的持续集成和部署(CI/CD)–第3天

    目录 主题 路线图 先决条件 Azure Active Directory和服务主体 创建一个Azure Active Directory和服务主体 将应用程序集成到角色 将Jenkins与Azure ...

  5. 使用Jenkins在Azure Web App上进行ASP.NET Core应用程序的持续集成和部署(CI/CD)–第2天

    目录 主题 路线图 先决条件 将ASP.NET Core应用发布到Azure应用服务 在Azure上配置Jenkins 在Azure上创建Jenkins服务器 解锁Jenkins 结论 主题 本系列文 ...

  6. CI/CD——构建企业级Docker+Jenkins+Git+Harbor流水线自动化持续集成持续发布平台

    构建企业级Docker+Jenkins+Git+Harbor流水线自动化持续集成持续发布平台 CI/CD是什么? 持续集成(CI)/持续交付(CD)的优势 自动化部署流程图 Git Github Gi ...

  7. CI持续集成系统环境---部署Jenkins完整记录

    最近在看CI/CD集成的相关部分,发现几篇好文,转载分享一波. 来源网络:[原创]CI持续集成系统环境---部署Jenkins完整记录 - 散尽浮华 - 博客园 Jenkins通过脚本任务触发,实现代 ...

  8. 持续集成/持续部署(3)Jenkins(2)

    JenkinsPipeline CI/CD持续集成/持续部署 持续集成(Continuous integration)是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次 ...

  9. 敏捷/持续集成/持续交付/DevOps基本理论全面解析

    1 辨析敏捷/持续集成/持续交付/DevOps 2 持续集成 2.1 为何会有持续集成? 敏捷开发解决了单体应用的开发和每日构建的问题. 而单体应用拆分成微服务,就需要有一套方案来组装这些微服务,使其 ...

最新文章

  1. 为什么体制内外永远在互相羡慕着?
  2. 禁用Chrome缓存进行网站开发
  3. android的log.d不显示结果
  4. python中numpy.ndarray与list的区别?以及用matplotlab.pyplot绘图时的注意事项。
  5. 【收藏】keepalived nginx服务检测脚本
  6. 对视频中的特征颜色物体(青色水杯)进行跟踪
  7. linux c语言内核函数,2014-1-5_linux内核学习(1)_C语言基础
  8. 华北水利水电大学c语言程序设计四_我校代表队在“中国高等计算机大赛——团体程序设计天梯赛” 中喜获佳绩...
  9. 从零开始拼凑的_如何从零开始拼凑AI
  10. elk-可视化图标(nginx)
  11. JavaScript 变量声明提前
  12. 银行剧震!国内第一家无人银行来了...
  13. cab文件打包的ActiveX控件(转)
  14. 个性时钟屏保=冷高轮时间麻将时钟电脑屏幕保护
  15. matlab怎么做多元非线性拟合,如何用matlab进行多元非线性拟合
  16. 淘气的小丁-抽奖小游戏
  17. 实用的配音软件推荐,确定不来看看?
  18. 什么是深度卷积神经网络,基于深度卷积神经网络
  19. 超算平台安装DL_POLY分子动力学软件
  20. 关于STM32内部温度传感器的算式话题

热门文章

  1. 好想写点儿什么,但是不知道怎么写
  2. linux 后台一直执行的sh
  3. 字符串表达式求值 C#实现
  4. 对微型计算机工作影响最小的因数是,(已)保护试题9
  5. 【动态规划】cf1034C. Region Separation
  6. XML与web开发-01- 在页面显示和 XML DOM 解析
  7. 视频图像传输学习笔记-基础小知识(一)
  8. 面象对象设计原则之六:迪米特原则(LeastKnowledge Principle, LKP)
  9. 反射封装工具类-----零SQL插入
  10. SQL 通过syscolumns.xtype动态查找指定数据类型字段所包含的数据