| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 3步教你把个人应用服务部署到云服务器ECS上 -> 正文阅读 |
|
[系统运维]3步教你把个人应用服务部署到云服务器ECS上 |
本文来自云服务器ECS开发实践征文活动用户投稿,已获得作者(昵称秋天)授权发布。文章首发于公众号“弹性计算百晓生”,专注分享云计算知识。 每一个程序员都应该很熟悉Github,可能也遇到过由它托管的代码部署的应用无法正常访问的情况,亦或辛辛苦苦准备的博客、设计的网页无法被用户看到,心态难免受到影响。 如果你默默地点了点头,那么恭喜你来对了,赚到了。本篇文章将教会你如何把 Github 中托管的代码部署在云服务器ECS中,从而使得用户能够在互联网公网中访问、使用部署的应用。 这里选用了阿里云的云服务器ECS,新客 180 元可以购买 3年,性价比较高,尤其是可以搭配免费的 DevOps、镜像服务以及价格低廉的 OSS、域名等服务一起使用,简直就是“上云全家桶”。可以说是一个非常低成本的开源小项目/个人博客的部署方案。 为了快速开发与部署,使用阿里云 DevOps 工具「云效」,实现上传的代码能够自动地构建与使用 Docker 部署。整个实践的过程分为3步。 01 基础环境配置为了后续部署与集成 DevOps 环境更为方便,可以安装 nginx、docker、mysql 等基环境。 1、nginx 安装 默认服务中会自带 nginx 服务,可以使用 `rpm -ql nginx` 命令来查看 nginx 的配置。
2、准备阿里云提供的镜像仓库 创建镜像仓库,配置访问凭证,方便后续可以登录仓库,推送镜像: 3、镜像加速 可以在阿里云的容器镜像服务配置自己的镜像加速服务:
4、Docker 安装
5、创建 Docker 网络 新建网络是为了实现同主机的多个容器间网络互通,走内网,类似于软件交换。
- d 参数指定 Docker 网络类型,有 bridge overlay。其中 overlay 网络类型用于 Swarm mode。 - subnet 参数表示新建了 172.27.0.0/255.255.0.0 的网络,名称为 cloud-net。 6、mysql 安装
02 部署架构日常管理托管在 github 等开放平台中的代码,如果想自动构建与部署,则可以利用阿里云的云效与 ECS 云服务器联动实现快速的接入 DevOps。分别以 vue 工程和 java 工程,部署在 Docker 的案例来展示。 vue 工程和 java 工程分别都部署在 Docker 之中,Vue 通过挂载的配置文件,设置访问的 http 请求中增加 base_url prefix。云服务器中的 nginx 匹配到 base_url 并转发至 java docker 处。 部署结构已经梳理完毕,下面来梳理一下配置项。 1、Vue 工程 vue 工程会添加一个 base_url(plans),可以通过挂载配置的方式,选择 base_url 的内容。 工程配置文件:
Dockfile 配置:
内置 nginx 配置:
运行 Docker 容器:
相关参数说明: --network:设置加入的网络 --hostname:其中容器中可以通过 hostname 访问到服务 -p:设置端口映射 -v:挂载的配置文件 registry:指定镜像来源 2、Java 工程 Dockfile 配置:
运行 Docker 容器命令: 这里需要注意时区的配置,否则在进行 sql 查询时间的时候会有偏差。
3、Nginx 转发配置
03 云效 DevOps 集成1、Vue 工程集成 新建流水线: 为了让 github 上的项目可以加速,可以在网站后面添加 cnpmjs.org ,避免云效的 git clone 操作会超时。下面是代码仓库的配置项: 接下来是配置构建步骤,首先配置 Node 的基础环境:
随后把构建产出物的 dist 包进行 Docker 镜像的构建: 这个步骤结束后,会把构建的镜像发送到之前配置的阿里云镜像仓库中,随后可以进行 Docker 镜像的部署工作。选定好部署的主机与执行用户,填入执行的部署脚本完成。
2、Java工程集成 Java 工程与 Vue 的工程类似,选用 Java 的构建模板即可。 在随后的 Docker 镜像的部署中,填入部署脚本:
保存流水线配置后,可以选择手动执行,也可以利用 webhook 功能让云效自己触发执行的时机。 以上就是通过云服务器ECS 做 Github DevOps部署的完整过程。使用云服务器ECS进行代码、应用服务部署还是非常方便的,并且用户访问十分通畅、便捷,体验更佳。 如果你还没有属于自己的云服务器,机会来了,一年一度的阿里云采购季马上开启,就在3月,开年好云,钜惠升级。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 5:34:40- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |