手把手教你快速搭建个人博客

线上博客预览地址:乐哉开讲
本篇博文同步视频教程:B站
博客使用的是开源halo搭建

写在前面

  • 具备一定的 Linux 基础。
  • 具备一定的 Docker 使用基础。
  • 如需使用 IP 访问,请先确保 Halo 的运行端口已经打开,除非你使用 80 端口运行 Halo。
    服务器(虚拟机)配置要求
  • CentOS 7.x
  • 1G 以上内存

安装docker

  • 卸载原有dokcer
yum remove docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine
  • 安装yum工具
yum install -y yum-utils
  • 添加docker仓库
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  • 添加aliyun docker仓库
yum-config-manager --enable docker-ce-nightly

yum-config-manager --enable docker-ce-test

yum-config-manager --disable docker-ce-nightly

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 
  • 安装docker-ce
yum install  docker-ce docker-ce-cli containerd.io -y
  • 启动docker
systemctl start docker
  • 配置阿里云镜像加速,这里可以去阿里云创建自己的镜像加速链接,会快点。
mkdir -p /etc/docker

tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://tpsx5wfd.mirror.aliyuncs.com"]
}
EOF

systemctl daemon-reload

systemctl restart docker
  • 运行docker 命令测试是否安装成功 docker -v,注意,以上命令都需要逐行执行。出现下面结果,代表安装成功

如果想开机自启docker,可以继续执行命令systemctl enable docker
docker 环境已经安装完成,现在我们来安装mysql组件,最后再安装博客组件

安装mysql

  • 下载镜像
docker pull mysql:5.7
  • 创建容器并启动
	docker run -p 3306:3306 --name mysql \
	-v /mydata/mysql/log:/var/log/mysql \
	-v /mydata/mysql/data:/var/lib/mysql \
	-v /mydata/mysql/conf:/etc/mysql \
	-e MYSQL_ROOT_PASSWORD=root \
	-d mysql:5.7
参数说明
-p 容器端口映射到主机端口
-v 将文件挂载到主机
  • 修改mysql配置文件
vim /mydata/mysql/conf/my.cnf
#复制以下内容
  [client]
	default-character-set=utf8
	[mysql]
	default-character-set=utf8
	[mysqld]
	init_connect='SET collation_connection=utf8_unicode_ci'
	init_connect='SET NAMES utf8'
	character-set-server=utf8
	collation-server=utf8_unicode_ci
	skip-character-set-client-handshake
	skip-name-resolve
	lower_case_table_names=1
  • 重启容器
docker restart mysql
  • 设置开机自启
docker update mysql --restart=always

安装halo

  • 下载halo配置文件,halo是基于java写的,下面的配置文件,学习java的同学应该就比较熟悉了
# 下载配置文件到 ~/.halo 目录,路径最好保持一致,不然无法启动
curl -o ~/.halo/application.yaml --create-dirs https://dl.halo.run/config/application-template.yaml
  • 修改配置文件内容,设置数据库
vim ~/.halo/application.yaml
 修改内容如下
server:
    # 修改端口为80
  port: 80 
  # Response data gzip.
  compression:
    enabled: false
spring:
  datasource:
  # 我们使用mysql作为数据存储,所以需要注释h2,
  # 注释 start
    # H2 database configuration.
    #driver-class-name: org.h2.Driver
    #url: jdbc:h2:file:~/.halo/db/halo
    #username: admin
    #password: 123456
    # 注释 end
    # MySQL database configuration.
    # 开启mysql start
   driver-class-name: com.mysql.cj.jdbc.Driver
    # 修改mysql连接
    url: jdbc:mysql://mysql/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    username: root
    # 修改密码 root
    password: root
  # H2 database console configuration.
  # 注释H2 start
  #h2:
    #console:
      #settings:
        #web-allow-others: false
      #path: /h2-console
      #enabled: false
      # 注释H2 end
halo:
  # Your admin client path is https://your-domain/{admin-path}
  admin-path: admin
  # memory or level
  cache: memory
  • 创建数据库
    我们前面已经安装了mysql,我们现在进入到mysql容器
# 进入容器
docker exec -it mysql mysql -uroot -proot
# 创建数据库,数据库名称和库中保持一致
CREATE DATABASE `halodb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
  • 下载halo镜像
docker pull ruibaby/halo
  • 运行halo
docker run  -it -d --name halo --link mysql:mysql -p 8090:8090  -v ~/.halo:/root/.halo ruibaby/halo
参数解释:
--link halo需要连接mysql,所以需要与mysql组件建立关联
  • 查看运行中的容器
dockr ps


所有组件安装完毕,我们进入到halo组件,查看是否启动完成

docker logs halo

发现halo已经在8090端口启动完成
如果防火墙开启的话,需要执行以下命令开通端口访问

firewall-cmd --zone=public --add-port=8090/tcp --permanent

我们现在获取本机Ip,进行访问

ifconfig

我的IP是172.16.51.127
访问地址:http://172.16.51.127:8090/,如果看到如下界面则代表安装成功。
在这里插入图片描述

我们输入基本信息,点击下一步

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

我们已经来到后台,我们可以调整后台的布局,
在这里插入图片描述

在这里插入图片描述

好的,现在我们发表第一篇文章,文本编辑器支持markdown语法
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

大家看到这,会有疑问,为什么和我的博客怎么不一样呢,因为我用了博客主题,现在教大家如何更换主题
http://172.16.51.127:8090/admin,进入设置页面,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

点击从本地上传主题,然后启用主题,我们再访问首页
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

到此,博客快速搭建已经完成了,后面会有专门的教程介绍关于如何使用halo,谢谢大家!!!主题安装包,大家可以关注我的微信公众号“乐哉开讲”领取本篇文档和主题包.

在这里插入图片描述

微信搜一搜【乐哉开讲】关注帅气的我,回复【干货】,将会有大量面试资料和架构师必看书籍等你挑选,包括java基础、java并发、微服务、中间件等更多资料等你来取哦。
书读的越多而不加思考,你就会觉得你知道得很多;而当你读书而思考得越多的时候,你就会越清楚地看到,你知道得很少。——伏尔泰

©️2020 CSDN 皮肤主题: 黑客帝国 设计师:上身试试 返回首页