侧边栏壁纸
博主头像
Edward'blog 博主等级

If you are doing your best,you will not have to worry about failure.

  • 累计撰写 18 篇文章
  • 累计创建 13 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

使用docker&halo搭建个人站点

Edward
2024-01-19 / 0 评论 / 10 点赞 / 173 阅读 / 0 字
温馨提示:
本文最后更新于2024-02-15,若内容或图片失效,请留言反馈。 若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

docker&halo搭建个人站点

搭建条件:

1,Linux服务器一台:腾讯云或者阿里云

2,公网ip一个(服务器一般自带,如果没有建议做内网穿透)

3,域名一个(没有就无法做反向代理即无法使用域名访问)

docker的安装:

Docker官网:https://docs.docker.com/engine/install

我的是Centos(这里根据自己的系统安装):

设置存储库:

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装 Docker 引擎:

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

启动 Docker:

sudo systemctl start docker

通过运行映像来验证 Docker 引擎安装是否成功:

sudo docker run hello-world

安装完成后,执行以下命令启动docker服务并设置开机自启动(推荐):

sudo systemctl enable docker

halo面板的安装:

Halo官网:halo.run

使用docker部署可以直接创建容器(可以根据官网最新的来下载):

docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.11

这里可以先测试一下是否安装成功:

ip+port(端口为8090)

配置反向代理:

这里先把域名解析一下(我这里使用的是Nginx Proxy Manager做的反向代理)

这里建议先参考官网文章:

https://docs.halo.run/getting-started/install/other/nginxproxymanager

https://nginxproxymanager.com/guide/#quick-setup

创建docker-compose.yml文件将Quick Setup中的命令copy到里面

在服务器的~目录下创建nginx文件夹:

mkdir .nginx

进入该文件夹:

cd .nginx/

将docker-composes.yml放进去

然后使用docker compose up -d命令来启动docker compose(这里根据自己实际情况来),一定要在.nginx目录内运行

docker compose up -d

这里使用ip+port来访问Nginx-ui界面

ip+port(端口为81)

默认管理员用户:

Email: [email protected]

Password: changeme

然后根据自己的需求设置账号密码

里面的设置根据自己的需求来设置(SSL证书可以自动添加如果不行那就使用手动添加)

配置开机自启动:

最后建议在docker中的halo面板也做一下开机自启动

在容器中,创建一个新的systemd服务文件halo.service。可以使用任何文本编辑器打开一个新文件,并将以下内容复制到其中:

[Unit]
Description=Halo Panel
After=docker.service
Requires=docker.service

[Service]
ExecStart=/usr/bin/docker start -a halo
ExecStop=/usr/bin/docker stop -t 2 halo
Restart=always
RestartSec=30s
User=root

[Install]
WantedBy=multi-user.target

这个服务文件将告诉系统如何启动和停止Halo面板容器,并在需要时自动重新启动。

将该服务文件保存,并将其移动到/etc/systemd/system/目录中:

mv halo.service /etc/systemd/system/

更新systemd服务配置:

systemctl daemon-reload

启用并启动该服务:

systemctl enable halo
systemctl start halo

现在,Halo面板将在每次系统启动时自动启动。您可以通过运行systemctl status halo命令来检查服务的状态。

10
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区