部署基于Gitlab+Docker+Rancher+Harbor的前端项目这一篇就够了 安大虎 ​ momenta 中台开发工程师 6 人赞同了该文章 就目前的形势看,一家公司的运维体系不承载在 Docker+Harbor(或 Pouch 等同类平台)之上都不好意思说自己的互联网公司.当然这些技术也不适用于全部公司,技术在迭代,平台也一样,把我使用的工具和大家分享下,一起成长(文章中扩展可按需Google). Docker docker的架构图如下: 从图中可以看出几个组成部分 docker c…
紧接着上篇<关于 Docker 镜像的操作,看完这篇就够啦 !(上)>,奉上下篇 !!! 镜像作为 Docker 三大核心概念中最重要的一个关键词,它有很多操作,是您想学习容器技术不得不掌握的.本文将带您一步一步,图文并重,上手操作来学习它. 目录: 一.Docker 删除镜像 1.1 通过标签删除镜像 1.2 通过 ID 删除镜像 1.3 删除镜像的限制 1.4 清理镜像 二.Docker 创建镜像 2.1 基于已有的镜像创建 2.2 基于 Dockerfile 创建 三.Docker 导出…
前言 每次项目代码更新后都要重新部署,如果只有一台服务器还好. 但是如果是分布式系统,动不动就很多台服务器,所以代码的自动部署就显得十分重要了. 这里用几篇文章来记录一下如何使用Jenkins,Docker,github来搭建一个自动化部署的node项目. 思路 使用git进行版本控制,当项目更新时就触发 Jenkins的构建任务 Jenkins 从 git 拉取最新的代码 为了避免多个节点的运行环境差异,所以需要使用 Docker 来将我们的 node 项目打包为镜像 将镜像通过脚本部署到所有…
https://market.azure.cn/Vhd/Show?vhdId=9851&version=11921 产品详情 产品介绍GitLab https://about.gitlab.com/ 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目.它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释.可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库.团队成员可以利用内…
GitHub仓库 由于现在的代码基本上都是多人合作开发,所以肯定会用到像 git 这样的版本控制工具 所以这里使用 GitHub 来做一个演示 首先我们需要在github上新建一个仓库 点击New来新建一个仓库 输入一个名字 以及描述后点击 create 然后将代码上传到GitHub上 这里我上传的是一个简单的 hello world 的demo 到这里要部署的代码就准备完成了,接下来需要编写 Dockerfile 来告诉 docker 该怎么打包我们的项目 Dockerfile编写 首先我们在…
上一篇文章中准备工作已经完成的差不多了 这一篇主要讲解 Jenkins 上面的相关配置 为了让代码部署到所有的子节点上 所以我们首先需要在 Jenkins 中添加我们希望代码部署到的节点 配置节点 首先进入你的 Jenkins 页面 然后选中系统管理 点击进入系统管理后选择节点管理 然后点击新建节点 在输入框中为你的节点取一个名字 并选中固定节点选项 点击确定进入下一步 然后按照下图配置子节点 然后添加凭据用于 Jenkins 控制子节点 添加完凭据之后就可以选择刚刚添加的凭据并保存子节点 然后…
前文使用Docker搭建Jenkins+Docker持续集成环境我们已经搭建了基于docker+jenkins的持续集成环境,并构建了基于maven的项目.这一节,我们继续扩展功能,增加对Nodejs的支持,实现nodejs项目构建.并打包成docker镜像和自动部署. 1. 配置Nodejs环境 1.1 安装nodejs插件 打开系统管理--管理插件--可选插件,搜索NodeJS,选择NodeJS Plugin安装 1.2 配置nodejs 版本 系统管理 -- 全局工具配置 -- NodeJ…
前文使用Docker搭建Jenkins+Docker持续集成环境我们已经搭建了基于docker+jenkins的持续集成环境,并构建了基于maven的项目.这一节,我们继续扩展功能,增加对Nodejs的支持,实现nodejs项目构建.并打包成docker镜像和自动部署. 1. 配置Nodejs环境 1.1 安装nodejs插件 打开系统管理--管理插件--可选插件,搜索NodeJS,选择NodeJS Plugin安装 1.2 配置nodejs 版本 系统管理 -- 全局工具配置 -- NodeJ…
第一步:申请一个docker连接账号,可以借用putty工具,如果使用sublime,可以下载sftp插件,上传.下载来同步你线上线下的文件: 第二步:修改nginx区域配置文件,在conf文件夹里放配置文件.一个测试文件,直接修改或者cp一份,文件名设置为域名服务器的名字. 第三步:修改本地hosts文件,配置的域名及其对应的ip. 第四步:服务开启的情况下,浏览器输入自己配置的域名及其端口号即可访问.…
前提条件: 安装node.js. 国内的开发者最好先配置淘宝镜像. 之后用cnpm来代替npm命令. 项目创建过程: 打开cmd,输入命令进入目标工作空间,以本机项目为例: cd /d d: cd D:\workplace 输入全局安装vuecli的命令:cnpm install -g @vue/cli 输入检查vue版本的命令:vue --version 如果版本为3.0+,则继续. 输入创建项目的命令:vue create vue-sell-cube 会看到 ? Your connectio…
docker 基础 什么是Docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于 操作系统层面的虚拟化技术.由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器. Docker 在容器的基础上,进行了进一步的封装,从文件系统.网络互联到进程隔离等等,极大的简化了容器的创建和维护.使得 Docker 技术比虚拟机技术更为轻便.快…
什么是Docker? Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于 操作系统层面的虚拟化技术.由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器. Docker 在容器的基础上,进行了进一步的封装,从文件系统.网络互联到进程隔离等等,极大的简化了容器的创建和维护.使得 Docker 技术比虚拟机技术更为轻便.快捷. 记住最重要的…
文章首发于微信公众号: 小哈学Java 镜像作为 Docker 三大核心概念中,最重要的一个关键词,它有很多操作,是您想学习容器技术不得不掌握的.本文将带您一步一步,图文并重,上手操作来学习它. 目录: 一.Docker 下载镜像 1.1 下载镜像 1.2 验证 1.3 下载镜像相关细节 1.4 PULL 子命令 二.Docker 查看镜像信息 2.1 images 命令列出镜像 2.2 使用 tag 命令为镜像添加标签 2.3 使用 inspect 命令查看镜像详细信息 2.4 使用 hist…
@ 目录 *本文说明 请大家务必查看 前言 首先介绍一下主角:Hexo 什么是 Hexo? 环境准备 详细版 入门:搭建步骤 安装git: 安装node: 安装Hexo: 进阶:hexo基本操作 发布第一篇博客 : 修改Hexo默认主题: 实现github域名访问我们博客: 卸载Hexo 错误 问题1 报错地址: 问题描述: 解决方案: 问题2 报错地址: 问题描述: 解决方案: 问题3 报错地址: 问题描述: 解决方案: 自我总结 简洁版 入门:搭建步骤 安装git: 安装node: 安装He…
harbor简介 Harbor 是一个企业级 Registry 服务.它对开源的 Docker Registry 服务进行了扩展,添加了更多企业用户需要的功能.Harbor 被设计用于部署一套组织内部使用的私有环境,这个私有 Registry 服务对于非常关心安全的组织来说是十分重要的.另外,私有 Registry 服务可以通过避免从公域网下载镜 像而提高企业生产力.这对于没有良好的 Internet 连接状态,使用 Docker Container 的用户是一个福音. 基于角色的访问控制:用户…
部署vue前端项目  一.下载项目到本地   https://github.com/macrozheng/mall-admin-web 二.npm install 三.修改api配置,改为你接下来要部署的后台项目的ip:port 四.编译打包 五.部署 蒋dist文件夹压缩成 dist.tar.gz 安装远程复制工具 yum -y install lrzsz 进入nginx文件夹:cd mydata/nginx/ 执行拷贝命令将本地dist文件拷贝到 nginx文件夹下:rz 解压:tar -z…
本文主要以部署前端Vue项目为例,讲述了如何基于云原生DevOps服务自动化部署前端项目~从开发完成到线上环境,我们只需提交代码即可~ 一.引言 作为一名开发人员,日常工作中我们除了需要负责代码的开发外,通常还需要负责代码的部署,运维等工作.而在传统的手工部署方法中,在每次版本迭代或需求变更完成后,除了将代码提交到代码仓库外,如果需要更新线上环境,我们还需要重复本地构建打包.连接远程服务器.上传代码到服务器指定目录等步骤.这些步骤虽然简单,但是通常耗时耗力,若同时存在多个环境时,也容易引起部署错…
以SVN+RMS为核心的发布系统,对前端开发的影响上来看,存在以下问题: 覆盖式的发布,容易导致线上问题. js一旦发布,就有可能被任意其他页面使用.被引用的越多,就越重要.一旦核心js出现故障,影响面巨大. 发布的基本粒度过于细节,基本发布单位是文件.相对后端每次发布整个应用,文件粒度的发布体现出对应用复杂度缺乏深入理解. 手工挑选文件发布,容易发生人为错误.SVN+RMS的模式使得前端开发在各种GUI工具间切换,使得发布环节效率低下.在前端工具逐渐命令行,一键式,自动化,集成编辑器的大趋势下…
工作多年,在项目部署方面, 1:以前用ftp或者rz上传更新的,每次更新算上打包.目录切换.更新遗漏.备份.出错还原.启动等工作都得搞上一来小时甚至更长,要是多两台服务器那心都凉了: 2:后来有用svn或者git的,服务器上拉取的是编译后的包或目录: 3:再到现在用jenkins实施自动化构建部署的,配置好jenkins的流水线之后,以后每次代码提交后只需要点击一个按钮即可: 方式3个人感觉已经很不错了,很方便,还有jenkins+docker的方式等等,这里不做对比,记录目前使用的部署方式:D…
结合docker发布前端项目(基于npm包管理)的shell脚本 本教程依据个人理解并经过实际验证为正确,特此记录下来,权当笔记. 注:基于linux操作系统 目前主流的前后端分离的项目中,常常在部署上线这个环节会遇到很多麻烦,这里我使用了docker进行部署,这段shell脚本我放在前端工程目录下,每次要部署上线时运行这个文件,可以很方便的帮助上线.注解都写在了代码中. #!/usr/bin/env bash // 以下用变量存放一些配置信息 BUILD_PROFILE="prod"…
docker自动化部署前端项目实战一 本文适用于个人项目,如博客.静态文档,不涉及后台数据交互,以部署文档为例. 思路 利用服务器node脚本,监听github仓库webhook push事件触发post请求,自动拉取最新代码,再用docker接管项目编译.部署. 环境 本文使用云服务器搭建,环境版本: OS:CentOS Linux release 8.2.2004 docker:19.03.12 node:14.5.0 git:2.18.4 云服务器如果没有安装以下环境,需要安装. dock…
目录 CI 1.Gitlab的CI 1.1 GitLab-Runner 1.2 .gitlab-ci.yml 1.3 配置.gitlab-ci.yml 1.3.1 Pipeline概念 1.3.2 Stages 1.3.3 Jobs 2.CI/CD VUE应用 2.1 创建dockfile文件 2.2 创建.gitlab-ci.yml文件 2.3 注册git runner 2.4 流水线编译成功 CI 持续集成指的是,频繁地(一天多次)将代码集成到主干. 持续集成的目的,就是让产品可以快速迭代,…
Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.CI, CD 与Jenkins 互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称 CI) => 持续集成指的是,频繁地(一天多次)将代码集成到主干. 它的好处主要有两个: 快速发现错误.每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易. 防止分支大幅偏离主干.如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大,甚至难以集成.…
原始发布部署: 石器时代的我们,先是本地打包好项目,在去服务器上把原来的文件删了,然后回到本地copy到服务器: 这操看起来简单,实际部署的人就知道多烦了,假如来几个项目都要重新发布:那就爽了: 今天小编分享个自动打包部署方法,Jenkins 上只要你的小鼠标轻轻一点就OK: 正文: 首先是服务器上安装 Jenkins :前提呢要现在服务器上安装Java 环境  因为他是依据Java 环境运行的: 这里如何安装就不多说了,请参考这位哥们的博文 https://blog.csdn.net/runn…
使用Docker Compose部署基于Sentinel的高可用Redis集群 https://yq.aliyun.com/articles/57953 Docker系列之(五):使用Docker Compose编排容器: https://www.cnblogs.com/ee900222/p/docker_5.html…
================================================================================================================================================ 需求: 1.已经启动了jenkins[https://www.cnblogs.com/sxdcgaq8080/p/10489369.html] 2.已经启动了gitlab[https://www.cnblogs…
本文来自网易云社区 作者:孙婷婷 背景 我所在测试项目组目前的测试环境只有一套,在项目版本迭代过程中,开发或产品偶尔会在测试环境进行数据校验,QA人数在不断增加,各个人员在负责不同模块工作时也会产生脏数据,导致QA在功能测试和接口测试过程中需要清理测试环境增加工作量,同时QA组在进行异常测试等多维度质量保障时也希望有多套环境进行数据隔离.但目前测试环境多套隔离操作麻烦,每隔离一套环境需要修改大量配置.数据库重新建表到调试可用,在开发的帮助下至少需要3天的时间,在这种场景下,我们借鉴组内大数据QA…
前面介绍了很多关于ABP框架的后台Web API 服务端,以及基于Vue+Element前端应用,本篇针对两者的联合部署,以及对部署中遇到的问题进行处理.ABP框架的后端是基于.net core5.0 的Asp.net core 应用,因此和常规的Asp.net core 应用部署一样:而Vue+Element前端应用则是基于nodejs的应用,部署方式又有所不同,这里介绍基于Nginx的部署. 1.部署基于.netcore5.0的ABP框架后台Api服务端 1)安装.net core 环境 在…
记得刚接触Rancher时,看了官方文档云里雾里,跟着官网文档部署了高可用Rancher,发现不管怎么折腾都无法部署成功(相信已尝试的朋友也有类似的感觉),今天腾出空来写个总结,给看到的朋友留个参考(亲测可用!按照下面步骤操作不会出现部署超时.部署完成后无法打开等问题). 也许有人会问:什么是RANCHER?套用官网的话:Rancher 是为使用容器的公司打造的容器管理平台. 也许有人又会问:用K8s不香吗,为什么要加一层RANCHER?其实K8s是比较复杂的,尤其是各组件的版本选择以及大规模的…
前言 部署了三个nginx用于前端项目, 并使用keepalived部署好热备, 所以总共有5个nginx 创建好nginx的文件和配置 根据上面的指令创建好目录 mkdir /home/web/nginx01 mkdir /home/web/nginx02 mkdir /home/web/nginx03 nginx.conf配置文件 这里我配置了三个nginx节点 user nginx; worker_processes 1; error_log /var/log/nginx/error.lo…