『亚马逊云科技产品测评』活动征文|云服务器如何快速搭建个人博客(图文详解)
授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道
文章目录
- 引言
- 一、前期准备步骤
- 1.1 准备一个亚马逊 EC2 服务器
- 1.2 进入控制台安装 git
- 1.3 安装Docker 和 Docker compose
- 二、博客开源项目介绍
- 2.1 操作界面展览
- 三、拉取项目搭建个人博客
- 3.1 拉取项目进行配置
- 3.2 启动Docker服务配置个人站站点
- 查看项目
- 配置http服务并启动 Docker
- 3.3启动基于Docker Compose配置文件的容器服务:
- 配置docker-compose PATH环境变量
- 启动Docker Compose容器服务
- 3.4 安全组中开放 8080端口
- 四、访问个人网站
- 结尾
引言
Docker Compose是一个用于定义和运行多个 Docker 容器的工具,负责快速的部署分布式应用。可以轻松解决由多个相互依赖的服务组成,启动、停止和扩展整个应用程序,并确保各个服务之间的通信和依赖关系正确配置的项目。
今天就来带大家在亚马逊云服务上使用 Docker compose 拉取 github 上的博客开源项目快速搭建一个属于自己的个人博客网站,下面我们就来看看具体教程吧!
一、前期准备步骤
1.1 准备一个亚马逊 EC2 服务器
亚马逊的云服务器我们前面已经介绍过了,只需要官网进行注册就可以免费进行领取一年的 EC2 云服务器了;
- 可以说免费额度也是非常的大了,够我们折腾好久了。
然后进入亚马逊官网找到 Amazon EC2
之后就可以看到免费周期为一年的免费套餐了
解下来就是注册然后进入里面来,去购买实例了,大家一步步完成就好了。
1.2 进入控制台安装 git
好了亚马逊的云服务器准备了之后接下来就简单了直接利用 SSH 链接进云服务器就可以了。
然后运行 yum 命令来安装git
sudo yum install git
出现这个就安装好我们的 git
了,后面可以直接用 git
来拉取开源项目。
- 我们也可以使用
git --help
查看帮助文档 - 来看看git是否安装成功
这里就可以看到git
的各种操作了。
1.3 安装Docker 和 Docker compose
由于我们本次的项目是基于Docker 来进行搭建的,所以安装 Docker 是必不可少的。
- 安装Docker:
sudo yum install docker -y
老样子出现这个界面就是 Docker
安装成功了,下面就是安装 Docker compos 的步骤了:
- 下载二进制包
# 下载二进制包
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- 给予可执行权限
# 给予可执行权限
sudo chmod +x /usr/local/bin/docker-compose
- 查看是否部署成功
# 查看是否部署成功
docker-compose --version
📑图片展示:
这里我们可以看到**docker-compose
** 已经安装成功,版本是 Docker Compose version v2.23.0
二、博客开源项目介绍
本次我们选择搭建的个人博客开源软件是 solo
,很多程序员的第一个个人博客都是基于他去搭建。
solo
github 开源网站链接:一键进入
他这里是由 java 实现的程序编写,有前端界面和后端管理系统供我们使用,并且还可以一键更换皮肤。
- 如果大家对里面的预设皮肤不满意也可以对他的源码进行更改
- 去修改这里的源码,做一些定制化内容
这里就只给大家展示一点剩下的可以自己去文档里面看哦!
2.1 操作界面展览
开始使用
浏览界面
编辑文章
个性皮肤
三、拉取项目搭建个人博客
由于我们是使用 Docker
来构建项目的所以,我们需要进到另外一个项目
solo in Docker
的项目里来进行使用 Docker 的方法一键部署个人博客。
- 这个项目是另外一个程序员基于
solo
开发的项目 - 不过在上面开发这个开源软件的操作文档有些写,就下文档下方
- 项目网站: 一键直达
3.1 拉取项目进行配置
先进行拉取项目把,开源项目克隆到本地:
git clone https://github.com/liumapp/solo-in-docker.git
3.2 启动Docker服务配置个人站站点
查看项目
这里我们项目拉取完成之后就可以用 ls 查看一下项目是否拉取成功。
solo-in-docker
就是我们的的项目文件
然后cd
进入可以看到整个项目的框架是和 github 是一模一样的
配置http服务并启动 Docker
然后查看目录 cd 进入 http 去启动 Docker 服务,确保服务已启动。
-
启动命令
sudo service docker start
配置http目录下的rdocker-compose文件,修改自己的域名跟端口 -
cd 进入 http
-
vi docker-compose.yml
进行设置域名和端口 -
这里我们可以看到ports
部分的映射,为 8080,这样我们就可以使用 : -
http://localhost:8080 来访问我们的 solo-in-docker
-
的个人博客项目了,当然如果你想改成其他端口访问网站也可以
🔥 注:我们这里并不做端口修改继续使用8080端口进行访问。
当然这里只是做简单端口访问,后期大家可以去申请个人域名来进行访问
- 申请号域名之后:
- 在
Docker Compose
文件中,在solo
和mysql
配置中添加一个hostname
参数:
3.3启动基于Docker Compose配置文件的容器服务:
配置docker-compose PATH环境变量
sudo docker-compose up
如果运行不了:
- 说明我们的 docker-compose 命令没有添加到PATH环境变量中
//设置docker-composePATH环境变量
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
启动Docker Compose容器服务
- 以管理员权限运行Docker Compose的命令
sudo docker-compose up
3.4 安全组中开放 8080端口
好了到这里我们的整个项目就搭建好了,现在只需要去开放安全组,8080/8080
端口进行访问就可以了。
四、访问个人网站
以上就是搭建个人网站的全部过程了,可以说是非常详细了,零基础小白也可快速搭建个人博客网站;
- 下面我们来看看成果把:
- 访问地址是公网地址 + 8080端口哦!
登录就可以访问我们的前端界面了使用起来也是非常的流畅
- 目前我们的网站还只能通过公网加端口的方式登录
- 后期大家可以去申请一下域名映射一下就可以通过域名访问了
- 正式上线了
好了废话不多说我们来进入后端来看看
这里大家可以看到功能非常的多啊,可以更换自定义皮肤和写文章管理等等。
结尾
以上就是Docker compose快速搭建个人博客的全过程了,部署起来非常方便。很多技术大牛都有自己的个人博客来用于记录生活和发表个人看法,快去建出属于你自己的个人博客网站来作为自己的成长的记录吧。
相关文章:
『亚马逊云科技产品测评』活动征文|云服务器如何快速搭建个人博客(图文详解)
授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道 文章目录 引言一、前期准备步骤1.1 准备一个亚马逊 EC2 服务器1.2 进入控…...
QT上位机开发(乘法计算小软件)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面一篇文章,我们学习了怎么创建qt的第一个工程,怎么用designer给qt修改界面。虽然我们到目前为止,还没有编写…...
【Matlab】BP 神经网络时序预测算法
资源下载: https://download.csdn.net/download/vvoennvv/88681507 一,概述 BP 神经网络是一种常见的人工神经网络,也是一种有监督学习的神经网络。其全称为“Back Propagation”,即反向传播算法。BP 神经网络主要由输入层、隐藏层…...
GPT在企业自动化方面的应用
GPT和类似的自然语言处理技术在企业自动化方面有许多应用。以下是一些主要的应用领域: 自动化客户支持: 使用GPT可以构建自动化的客户支持系统,能够理解和生成自然语言文本,回答常见问题,解决用户的疑问和问题。 自动…...
STM32——通用计时器
通用计时器框图 1.时钟源 1)内部时钟(CK_INT) 2)外部时钟模式 1:外部输入引脚(TIx),x1,2(即只能来自于通道 1 或者通道 2) 3)外部时钟模式 2:外部触发输入(ETR) 4&#…...
【HarmonyOS】鸿蒙开发简介与项目基础配置演示
从今天开始,博主将开设一门新的专栏用来讲解市面上比较热门的技术 “鸿蒙开发”,对于刚接触这项技术的小伙伴在学习鸿蒙开发之前,有必要先了解一下鸿蒙,从你的角度来讲,你认为什么是鸿蒙呢?它出现的意义又是…...
[MySQL] MySQL数据库创建存储过程
一、mysql存储过程的相关知识 1.1 存储过程的概念 存储过程是一组为了完成特定功能的SQL语句集合。类似于于其他编程语言中的函数,定义一个函数方法,可以随时起到传参调用的功能。 存储过程在使用过程中是将常用或者复杂的工作预先使用SQL语句写好并用…...
mysql哪些情况下不走索引?
mysql哪些情况下不走索引? MySQL是一种常用的关系型数据库,它使用索引来提高查询性能。然而,并非所有的SQL语句都能充分利用索引。在本文中,我们将介绍几个无法使用到索引的MySQL SQL语句。 1. 使用函数:当SQL语句中…...
蓝桥杯python比赛历届真题99道经典练习题 (13-20)
【程序13】 题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数 本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 2.程序…...
初识javaWeb
一、JavaWeb是什么? 1、概念 javaWeb指的是使用java语言进行互联网领域项目开发的技术栈——进行web项目开发所需的技术的集合。 -Web前端——在浏览器中用户可以看到的网页 -Web后端——为前端提供数据的程序 2、Web项目 java语言是可以进行多种类型的项目开发&a…...
day5--java基础编程:异常,内部类
6 异常 6.1 异常概述 出现背景: 在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式,…...
2023.12.28 关于 Redis 数据类型 List 内部编码、应用场景
目录 List 编码方式 早期版本 现今版本 List 实际应用 多表之间的关联关系 消息队列 频道(多列表)消息队列 微博 Timeline 栈 & 队列 List 编码方式 早期版本 早期版本 List 类型的内部编码方式有两种 ziplist(压缩列表…...
uni-app page新建以及page外观配置
锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni…...
问题:执行conda init 提示 No action taken,然后无法正确激活环境
执行完下面代码后, conda activate base 报错,提示先执行conda init,于是再执行下面代码 conda init发现还报错提示提示 No action taken。 解决方法: 打开一个新的终端窗口,您应该就可以正常使用conda命令。(把其…...
SpringBoot 增量/瘦身部署jar 包
背景 SpringBoot 项目的部署一般采用全量jar 包方式部署相关项目,如果我们对相关的Contrller\Service\Dao\Mapper 层进行相关业务调整就需要重新编译全量jar 包(包大小约为200M左右)实在太麻烦了。 本文:重点讲解使用SpringBoot 的增量/瘦身…...
AI客服的评分机制及自动化测试
智能客服的评分机制及自动化测试 使用pytest来编写智能客服的测试框架: 准备一个CSV文件来存储测试用例和预期结果。编写测试脚本,其中包含测试用例的读取、发送请求、评分逻辑和结果验证。使用pytest断言来验证测试结果。 首先安装pytest和requests库…...
【Matlab】ELM极限学习机时序预测算法
资源下载: https://download.csdn.net/download/vvoennvv/88681649 一,概述 ELM(Extreme Learning Machine)是一种单层前馈神经网络结构,与传统神经网络不同的是,ELM的隐层神经元权重以及偏置都是随机产生的…...
m3u8网络视频文件下载方法
在windows下,使用命令行cmd的命令下载m3u8视频文件并保存为mp4文件。 1.下载ffmpeg,访问FFmpeg官方网站:https://www.ffmpeg.org/进行下载 ffmpeg下载,安装,操作说明 https://blog.csdn.net/m0_53157282/article/det…...
相机内参标定理论篇------张正友标定法
一、为什么做相机标定? 标定是为了得到相机坐标系下的点和图像像素点的映射关系,为摄影几何、计算机视觉等应用做准备。 二、为什么需要张正友标定法? 张正友标定法使手工标定相机成为可能,使相机标定不再需要精密的设备帮助。…...
鸿蒙 Window 环境的搭建
鸿蒙操作系统是国内自研的新一代的智能终端操作系统,支持多种终端设备部署,能够适配不同类别的硬件资源和功能需求。是一款面向万物互联的全场景分布式操作系统。 下载、安装与配置 DevEco Studio支持Windows系统和macOS系统 Windows系统配置华为官方推…...
新一代大语言模型在Amazon Bedrock引领人工智能潮流
亚马逊Bedrock平台推出全新Amazon Titan大语言模型,为大型数据集预处理提供强大支持。亚马逊云科技开发者大会演讲重点介绍了Amazon Titan在文本大语言模型领域的创新,以及如何通过Bedrock平台实现定制化应用。 亚马逊Bedrock平台的主要产品经理Brent S…...
kafka实现延迟消息
背景 我们知道消息中间件mq是支持延迟消息的发送功能的,但是kafka不支持这种直接的用法,所以我们需要独立实现这个功能,以下是在kafka中实现消息延时投递功能的一种方案 kafka实现延时消息 主要的思路是增加一个检测服务,这个检…...
python+django高校教材共享管理系统PyCharm 项目
本中原工学院教材共享平台采用的数据库是mysql,使用nodejs技术开发。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。系统所要实现的功能分析,对于现在网络方便的管理&…...
三子棋(c语言)
前言: 三子棋是一种民间传统游戏,又叫九宫棋、圈圈叉叉棋、一条龙、井字棋等。游戏规则是双方对战,双方依次在9宫格棋盘上摆放棋子,率先将自己的三个棋子走成一条线就视为胜利。但因棋盘太小,三子棋在很多时候会出现和…...
09.kubernetes 部署calico / flannel网络插件
脚本中实现了 calico 和 flannel 这两种主流的网络插件,选择其中一种部署即可 1、calico calico架构 Calico是一个三层的虚拟网络解决方案,它把每个节点都当作虚拟路由器(vRouter),并把每个节点上的Pod都当作是节点路由器后的一个终端设备并为其分配一个IP地址。各节点…...
【DevOps 工具链】搭建 项目管理软件 禅道
文章目录 1、简介2、环境要求3、搭建部署环境3.1. 安装Apache服务3.2. 安装PHP环境(以php7.0为例 )3.3. 安装MySQL服务 4、搭建禅道4.1、下载解压4.2、 配置4.2.1、 启动4.2.2、自启动4.2.3、确认是否开机启动 5、成功安装 1、简介 禅道是国产开源项目管…...
ES6的默认参数和rest参数
✨ 专栏介绍 在现代Web开发中,JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性,还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言,JavaScript具有广泛的应用场景&#x…...
深入理解WPF MVVM:探索数据绑定与命令的优雅之道
引言: WPF(Windows Presentation Foundation)是一种用于创建富客户端应用程序的框架,而MVVM(Model-View-ViewModel)则是一种在WPF中使用的架构模式。MVVM提供了一种优雅的方式来组织和管理应用程序的代码&a…...
ssrf之gopher协议的使用和配置,以及需要注意的细节
gopher协议 目录 gopher协议 (1)安装一个cn (2)使用Gopher协议发送一个请求,环境为:nc起一个监听,curl发送gopher请求 (3)使用curl发送http请求,命令为 …...
SVN下载安装(服务器与客户端)
1.下载 服务器下载:Download | VisualSVN Server 客户端下载:自行查找 2. 服务器安装 双击执行 运行 下一步 同意下一步 下一步 选中安装目录 3. 客户端安装 双击执行 下一步 4. 服务器创建仓库 5. 服务器创建用户 6. 客户端获取资源 文件夹右键...
三亚网站建设兼职/怎么创建自己的网站平台
App在后台久置后,再次从桌面或最近的任务列表唤醒时经常会发生崩溃,这往往是App在后台被系统杀死,再次恢复的时候遇到了问题,而在使用FragmentActivityFragment的时候会更加频繁。比如,如果Fragment没有提供默认构造方…...
聊城网站建设哪个好/线上销售水果营销方案
近日,在开发时候发现 所有的页面都无法编译, 一查网上资料,原来使用ide的时候javase不包含 jsp-api javax.servlet 等javaee的包,所以用idea去编写jsp或者引用servlet的时候会出现红色呲字样(以idea12为例)…...
网站建设与管理模拟题1/小型培训机构管理系统
从HTML被发明开始,样式就以各种形式存在。不同的浏览器结合它们各自的样式语言为用户提供页面效果的控制。最初的HTML只包含很少的显示属性。随着HTML的成长,为了满足页面设计者的要求,HTML添加了很多显示功能。但是随着这些功能的增加&#…...
免费网站模板源码下载/网络广告类型
计算机硬件类_计算机网络基础11 . 三个网段/24,/24,/24能够汇聚成A. /22B. /22 C. /22 D. /25 答案:D2 . 因特网中完成域名地址和IP地址转换的系统是A. POP B. DNS C. SLIP D. Usenet 答案:B3 . 在计算机网络中,( )是将…...
南京专业网站开发团队/长沙官网seo推广
从Active Directory获取大量对象时应特别注意,一不小心,就会掉入性能瓶颈甚至引起内存泄漏。本文提供了一个关于.NET访问Active Directory的优化例子。 1.获取对象的属性值 DirectoryEntry.Properties 获取一个DirectoryEntry对象后,我们就开…...
wordpress媒体保存目录/百度手机助手app下载并安装
一、最简单的枚举 public enum Season{ Spring,Summer,Fall,Winter}; 二、带构造器的枚举 如下:EOrderType就是枚举的构造函数 例如NormalOrder(0, “一般订单”) 第一个0对于构造函数的type,第二个参数对应构造函数的desc getOrderType 注意&…...