Deploy

Intellij IDEA搭建JSP+Tomcat开发环境

帅比萌擦擦* 提交于 2020-04-12 12:23:49
1.新建项目 然后填入项目名称和选择项目路径,填完点击完成。 2.添加WEB框架 3.配置Tomcat 在File-->Settings里面 最后选择Tomcat解压的路径,点击ok就行了。 最重要的就是要把网页配置在Tomcat下。 点击Add Con..... 这里要提一下,我看网上有人说不要点+,在Templates里选择,但是我最后一直报404错误,点击+号反而是好的。 改好Name,选好Tomcat版本,再点击Deploy.... 点击Atrifact后应该会自动把你的WEB项目给选中,最后如下面那种图那样基本就问题了。 那个Tomcat的图标得是亮的,旁边得运行图标也得是亮的。 我遇到的一些问题: 1.8080端口被占用:我的打开了Tomcat的startup.bat了,关掉就好了。如果你们之前做过其他web的开发,也可能会被占用,如.net的iis也有可能占用8080。 2.1099被占用:打开cmd,输入netstat -aon | findstr 1099,找到PID后,在输入taskkill -f -pid PID(替换成占用的pid),终止掉那个程序,重启后就ok了。 3.运行后404报错,上面说了,点击+,不要点击 Templates 来源: oschina 链接: https://my.oschina.net/u/4261110/blog/3230746

GitLab+Docker搭建CI/CD自动化部署

核能气质少年 提交于 2020-04-11 16:29:43
1.使用场景 CICD,顾名思义就是持续集成(Continuous Integration)和持续部署(Continuous Deployment)简称,指在开发过程中自动执行一系列脚本来减低开发引入 bug 的概率,在新代码从开发到部署的过程中,尽量减少人工的介入。 以前的老技术,比如git/svn+jenkins这种,jenkins的配置多数还是依赖于负责维护CI的人,很多人不熟悉jenkins怎么配置,每一个步骤应该怎么编译和测试,一般都由CI的人来定义。 而CICD,其实可以使用jenkinsfile,就象gitlab的 .gitlab-ci.yaml文件,把CICD的流程控制和步骤也作为开发的一部分,由开发去维护。并且可以很快的部署到多个环境。 持续集成 持续集成指在和向远程仓库 push 代码后,在这次提交合并入主分支前进行一系列测试,构建等流程。假设现在有个应用的代码存储在 gitlab 上,每天开发者都 push 很多次提交,针对每次 push,你可以创建一系列脚本进行自动测试,降低往应用里引入错误的概率。这就是持续集成,它可应用在包括开发分支在内的多个分支上。 持续部署 持续部署在持续集成的基础上更进一步,指将推送指仓库默认分支的部署至产品环境。如果这部分需要手动触发,这就是一个持续交付(Continuous Delivery)环节。 安装环境 Gitlab

ASP.NET Core利用拦截器 IActionFilter实现权限控制

試著忘記壹切 提交于 2020-04-11 08:52:59
原文: ASP.NET Core利用拦截器 IActionFilter实现权限控制 “ 麦荻网教系统 ”采用了前后端代码分离的架构,即“Miidy.Cloud.Console”站与“Miidy.Cloud.Manage”站(两个前端站)同时通过web api的方式调用“Miidy.Cloud.RestWeb” web服务,以达到前后端代码分离的方式(详情请查看麦荻网教系统的 安装部署文档 )。因为“Miidy.Cloud.Manage”站只开放给具备管理权限的用户,故除了在前端增加控制外,还需在“Miidy.Cloud.RestWeb” web服务内进行权限控制。那么,如何在“Miidy.Cloud.RestWeb” web服务内根据用户实现权限控制呢? IActionFilter 在“Miidy.Cloud.RestWeb”程序内,我们将借助IActionFilter接口来实现请求的拦截。该接口提供了两个方法( 官网文档 )分别为:OnActionExecuted(Action执行后)、OnActionExecuting(Action执行前)。根据需求,我们实现OnActionExecuting即可。 Attribute 我们再借助“Attribute”属性特性,可帮助我们在“Miidy.Cloud.RestWeb”指定的方法内按需使用拦截器,这样便可很方便的达到权限控制的目的。

AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排

China☆狼群 提交于 2020-04-11 07:54:28
一.前言 上一篇部署了一个最基础的helloworld应用,创建了两个容器和一个network,还算应付得过来。 如果该应用继续引入mysql、redis、job等若干服务,到时候发布一次得工作量之大就可想而知了,这时候就需要用到Docker Compose。 Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。使用Compose,可以使用YAML文件来配置应用程序的服务,然后使用一条命令就可以从配置中创建并启动所有服务。 Docker Compose概述及命令使用 https://docs.docker.com/compose/reference/overview/ 二.安装Compose Windows下安装Docker Desktop时已经附带安装了Docker Compose PS C:\Users\Administrator> docker- compose version docker -compose version 1.23.2 , build 1110ad01 docker -py version: 3.6.0 CPython version: 3.6.6 OpenSSL version: OpenSSL 1.0.2o 27 Mar 2018 Linux下需要自行安装 root@VM-16-9-ubuntu:~ # apt

DevOps的工作岗位的要求

允我心安 提交于 2020-04-10 09:50:24
## 为什么需要DevOps 不是每个人都能理解可靠的版本管理和牢固的构建系统的重要性。 也不是任何人能使得软件的发布达到可靠性,可重复性和可审计的高标准。Devops的职责就是将软件的构建和发布的流程自动化并且使它像机器人生产线一样运转,从而精确无误地保证正确的版本在要求的时间运行在规定的服务器上。 - 实现了软件的构建发布部署流程的自动化; - 自动化的流程提高了效率,实现了软件的快速发布; - 自动化的流程避免了人为的失误,提高了软件发布的准确性; - 自动化的流程能够尽早地发现问题,保证了软件功能的持续集成,而没有回退; - 自动化的流程使得软件的发布可靠且可重复; ## DevOps的工作岗位的要求 1. 了解软件开发的整个流程,其中包括source->metrics->compile->test->package->deploy。 2. 广阔的知识面,比如:Linux操作系统,软件开发技能,运维技能,数据库使用,软件架构实现等。 3. 沟通交流能力,需要与开发人员,测试人员,项目管理人员,基础架构维护人员协同工作。 3. 快速地解决问题的能力,扎实的计算机基础,熟练使用Shell,Perl或者Python脚本。 4. 英语读写能力,使用google,stackoverflow,github等提高工作效率。 5. 熟练使用基于web的支持分布式多平台的持续部署平台

Deploy TiDB Using the Binary

我的未来我决定 提交于 2020-04-09 20:09:19
Overview A complete TiDB cluster contains PD, TiKV, and TiDB. To start the database service, follow the order of PD -> TiKV -> TiDB. To stop the database service, follow the order of stopping TiDB -> TiKV -> PD. Before you start, see TiDB architecture and Software and Hardware Requirements . This document describes the binary deployment of three scenarios: To quickly understand and try TiDB, see Single node cluster deployment . To try TiDB out and explore the features, see Multiple nodes cluster deployment for test . To deploy and use TiDB in production, see Multiple nodes cluster deployment .

迁移 Express 到函数计算

主宰稳场 提交于 2020-04-08 22:11:30
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。函数计算更多信息 参考 。 Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API 网关、日志服务等资源。它通过一个资源配置文件(template.yml),协助您进行开发、构建、部署操作。Fun 的更多文档 参考 。 备注: 本文介绍的技巧需要 Fun 版本大于等于 3.6.3。 背景信息 Express 是一个基于 Node.js 平台的极简、灵活的 Web 应用开发框架,它提供一系列强大的特征,帮助你创建各种 Web 和移动设备应用。 步骤一:准备环境 本文介绍的方法,不需要安装 Docker,仅仅安装 Fun 即可,最简单的方式就是直接下载可执行的二进制文件。 安装 Fun 到本机。详情请参见 安装文档 。 执行 fun --version 检查安装是否成功。 步骤二:迁移应用 执行以下命令创建一个 Express 项目,详情请参见 Express application generator ,或者您可以按照官方描述的步骤创建简单的

迁移 Spring Boot 到函数计算

末鹿安然 提交于 2020-04-08 12:59:14
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。函数计算更多信息 参考 。 Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API 网关、日志服务等资源。它通过一个资源配置文件(template.yml),协助您进行开发、构建、部署操作。Fun 的更多文档 参考 。 备注: 本文介绍的技巧需要 Fun 版本大于等于 3.6.3。 背景信息 Spring Boot 是由 Pivotal 团队在 2013 年开始研发,2014 年 4 月发布第一个版本的全新开源的轻量级框架。它基于 Spring4.0 设计,不仅继承了 Spring 框架原有的优秀特性,而且还通过简化配置来进一步简化了 Spring 应用的整个搭建和开发过程。另外 Spring Boot 通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。 步骤一:环境准备 本文介绍的方法,不需要安装 Docker,仅仅安装 Fun 即可,最简单的方式就是直接下载可执行的二进制文件。 安装 Fun 到本机。详情请参见

你知道web项目中Http请求与响应的四种情况吗

北城以北 提交于 2020-04-07 13:27:18
【四种情况】: HttpRequest、HttpResponse、HttpServletRequest、HttpServletResponse 【什么是HTTP?】 超文本传输协议(HyperText Transfer Protocol -- HTTP)是一个设计来使客户端和服务器顺利进行通讯的协议。 HTTP在客户端和服务器之间以request-response protocol(请求-回复协议)工作。 【Http常用的两个方法】 get - 从指定的服务器中获取数据 post - 提交数据给指定的服务器处理 【GET方法】 使用GET方法时,查询字符串(键值对)被附加在URL地址后面一起发送到服务器: /test/demo_form.jsp?name1=value1&name2=value2 特点: A、请求能够被缓存 B、请求会保存在浏览器的历史记录中 C、Url能够保存为浏览器书签 D、请求有长度限制【参数带入几十个Id,会发现少参数了】 E、get就是查询嘛,主要用来获取数据 【POST方法:】 使用POST方法时,查询字符串在POST信息中单独存在,和HTTP请求一起发送到服务器: POST /test/demo_form.jsp HTTP/1.1 Host: w3schools.com name1=value1&name2=value2 特点: A、请求不能保存缓存

你知道web项目中Http请求与响应的四种情况吗

允我心安 提交于 2020-04-07 09:54:35
【四种情况】: HttpRequest、HttpResponse、HttpServletRequest、HttpServletResponse 【什么是HTTP?】 超文本传输协议(HyperText Transfer Protocol -- HTTP)是一个设计来使客户端和服务器顺利进行通讯的协议。 HTTP在客户端和服务器之间以request-response protocol(请求-回复协议)工作。 【Http常用的两个方法】 get - 从指定的服务器中获取数据 post - 提交数据给指定的服务器处理 【GET方法】 使用GET方法时,查询字符串(键值对)被附加在URL地址后面一起发送到服务器: /test/demo_form.jsp?name1=value1&name2=value2 特点: A、请求能够被缓存 B、请求会保存在浏览器的历史记录中 C、Url能够保存为浏览器书签 D、请求有长度限制【参数带入几十个Id,会发现少参数了】 E、get就是查询嘛,主要用来获取数据 【POST方法:】 使用POST方法时,查询字符串在POST信息中单独存在,和HTTP请求一起发送到服务器: POST /test/demo_form.jsp HTTP/1.1 Host: w3schools.com name1=value1&name2=value2 特点: A、请求不能保存缓存