当前位置: 首页 > news >正文

『亚马逊云科技产品测评』活动征文|云服务器如何快速搭建个人博客(图文详解)

授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 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 的步骤了:

  1. 下载二进制包
# 下载二进制包
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  1. 给予可执行权限
# 给予可执行权限
sudo chmod +x /usr/local/bin/docker-compose
  1. 查看是否部署成功
# 查看是否部署成功
docker-compose --version

📑图片展示:

在这里插入图片描述
这里我们可以看到**docker-compose** 已经安装成功,版本是 Docker Compose version v2.23.0

二、博客开源项目介绍

本次我们选择搭建的个人博客开源软件是 solo ,很多程序员的第一个个人博客都是基于他去搭建。

  • solo github 开源网站链接:一键进入

他这里是由 java 实现的程序编写,有前端界面和后端管理系统供我们使用,并且还可以一键更换皮肤。

  • 如果大家对里面的预设皮肤不满意也可以对他的源码进行更改
  • 去修改这里的源码,做一些定制化内容

在这里插入图片描述

在这里插入图片描述

这里就只给大家展示一点剩下的可以自己去文档里面看哦!

2.1 操作界面展览

开始使用
start.png

浏览界面
在这里插入图片描述

编辑文章
post.png
个性皮肤
在这里插入图片描述

三、拉取项目搭建个人博客

由于我们是使用 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 文件中,在 solomysql 配置中添加一个 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 异常概述 出现背景: 在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式&#xff0c…...

2023.12.28 关于 Redis 数据类型 List 内部编码、应用场景

目录 List 编码方式 早期版本 现今版本 List 实际应用 多表之间的关联关系 消息队列 频道(多列表)消息队列 微博 Timeline 栈 & 队列 List 编码方式 早期版本 早期版本 List 类型的内部编码方式有两种 ziplist(压缩列表&#xf…...

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系统配置华为官方推…...

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

微服务商城-商品微服务

数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...

day36-多路IO复用

一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL

ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...

前端工具库lodash与lodash-es区别详解

lodash 和 lodash-es 是同一工具库的两个不同版本,核心功能完全一致,主要区别在于模块化格式和优化方式,适合不同的开发环境。以下是详细对比: 1. 模块化格式 lodash 使用 CommonJS 模块格式(require/module.exports&a…...