Halo博客2.3版本从Docker Compose 部署总结

最近买了一个服务器重新搭建了halo博客,发现版本更新了2.0以上跟以前版本安装有了点差别,就来说说我安装的时候遇到的问题吧~

Docker这个确实没有怎么接触过,但是确实比以前方便很多。我是安装的宝塔面板后在里面进行安装docker,这个步骤就略过有很多教程或者参考官方文档。

Docker Compose 部署

1.拉取镜像:

docker pull halohub/halo

2.第二步创建文件(可以参考文档,Halo 产生的所有数据都会保存在这个目录)

mkdir ~/halo && cd ~/halo

3.创建配置文件:docker-compose.yaml(这里不会命令创建文件,使用面板创建复制进去)

Halo博客2.3版本从Docker Compose 部署总结_第1张图片

version: "3"

services:
  halo:
     #升级改下面halo:2.2.0这个版本号就OK!
    image: halohub/halo:2.3.0
    container_name: halo
    restart: on-failure:3
    volumes:
      - ./:/root/.halo2
    ports:
      - "8090:8090"
    command:
     #修改ysql://XXX.XXX.XXX.XXX:3306/halodb,这是你外部数据库Mysql的地址,替换数据库IP或者域名都可以!端口号(3306)后面的是数据库名。
     - --spring.r2dbc.url=r2dbc:pool:mysql://你的公网IP:3306/halodb 
     #下面sqlroot是数据库用户名。
     - --spring.r2dbc.username=halodb
     #下面是数据库密码
     - --spring.r2dbc.password=root
     #这是你用的数据库类型
     - --spring.sql.init.platform=mysql
     #域名
     - --halo.external-url=这里填写你的公网IP或者域名
     #下面两个是初始管理员账号和密码
     - --halo.security.initializer.superadminusername=后台用户名(自己定)
     - --halo.security.initializer.superadminpassword=后台密码(自己定)

这是我的配置文件的,文档里的看不懂的可以参考一下这个。
你的公网IP:“如果你是在面板安装创建的数据库就写公网ip,你是外部数据库就填写你自己链接地址就行”
我用的是MySQL数据库,默认是H2数据库文档建议是 PostgreSQL这个看你自己平时使用数据库的习惯,另外说一下创建成功MySQL是一张表采用的是PostgreSql扩展(EXTENSION )类型数据。

4.配置好后,运行命令即可

docker-compose up -d

3月16日更新

域名备案通过啦~~~,开始配置域名进行访问。
首先在宝塔页面创建自己的站点
Halo博客2.3版本从Docker Compose 部署总结_第2张图片

创建成功后,点击右侧设置按钮-配置修改-配置Nginx
Halo博客2.3版本从Docker Compose 部署总结_第3张图片
注释红框里的内容,将以下的内容复制到后面.

location / {
      proxy_pass http://127.0.0.1:8090/;       # 注意改成你实际使用的端口
      rewrite ^/(.*)$ /$1 break;
      proxy_redirect off;
      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Upgrade-Insecure-Requests 1;
      proxy_set_header X-Forwarded-Proto https;
    }

配置完后,先不急我们在弄一个SSL证书,阿里云和腾讯云都有免费的证书可以整一个,宝塔上好像也可以申请。

腾讯云:地址
阿里云:地址

将获取的证书的key与PEM填入,并开启强制HTTPS,这样进入域名访问是https

Halo博客2.3版本从Docker Compose 部署总结_第4张图片
这样配置就差不多了,又回到halo文件里找到之前配置的docker-compose.yaml

Halo博客2.3版本从Docker Compose 部署总结_第5张图片
这里之前是公网IP现在可以换为域名了,不然进入halo后会导致之前的图片加载不出来哦~
今天写到这里 后续问题持续更新…

你可能感兴趣的:(服务器搭建,docker,数据库,java)