惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

腾讯CDC
Schneier on Security
Schneier on Security
B
Blog RSS Feed
aimingoo的专栏
aimingoo的专栏
P
Proofpoint News Feed
A
About on SuperTechFans
Recorded Future
Recorded Future
Recent Announcements
Recent Announcements
Microsoft Security Blog
Microsoft Security Blog
L
LangChain Blog
Hugging Face - Blog
Hugging Face - Blog
The GitHub Blog
The GitHub Blog
Google DeepMind News
Google DeepMind News
T
Tailwind CSS Blog
Vercel News
Vercel News
H
Hackread – Cybersecurity News, Data Breaches, AI and More
MyScale Blog
MyScale Blog
V2EX - 技术
V2EX - 技术
N
Netflix TechBlog - Medium
F
Fortinet All Blogs
V
Visual Studio Blog
Martin Fowler
Martin Fowler
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
博客园 - Franky
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
The Exploit Database - CXSecurity.com
F
Full Disclosure
Scott Helme
Scott Helme
H
Heimdal Security Blog
博客园 - 叶小钗
Google DeepMind News
Google DeepMind News
Cyberwarzone
Cyberwarzone
Application and Cybersecurity Blog
Application and Cybersecurity Blog
V
Vulnerabilities – Threatpost
Blog — PlanetScale
Blog — PlanetScale
Security Latest
Security Latest
WordPress大学
WordPress大学
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Troy Hunt's Blog
S
SegmentFault 最新的问题
Forbes - Security
Forbes - Security
Jina AI
Jina AI
S
Securelist
小众软件
小众软件
Simon Willison's Weblog
Simon Willison's Weblog
J
Java Code Geeks
AWS News Blog
AWS News Blog
N
News and Events Feed by Topic
博客园 - 三生石上(FineUI控件)
量子位

我心向阳 - ubuntu

ubuntu2604 尝鲜 Linux Mint 快速上手 阿里云ECS部署免费SSL证书 阿里云 ubuntu 用 docker 快速部署 halo
阿里云 ubuntu 用 docker compose 部署 halo
ymz316 · 2024-03-09 · via 我心向阳 - ubuntu

ubuntu 软件源中的docker和docker-compose 版本通常比较低,用docker-compose部署halo往往会报错,推荐用官方docker 官方软件源来安装。

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

顺便清理一下有残存配置信息的软件包

dpkg -l | grep ^rc | awk '{print $2}' | sudo xargs dpkg -P

二、添加官方软件源

# 添加 Docker's 官方的 GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# 添加官方软件源:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
  https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 

# 更新软件数据:
sudo apt-get update 

三、安装 docker 和 docker-compose

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

四、启动docker

sudo systemctl start docker

五、下载halo镜像

sudo docker pull halohub/halo:2.13

六、创建和编辑docker-compose.yaml 文件

在你想要安装网站的地方,通常是家目录(~),创建一个 docker-compose.yaml 文件,内容如下:

version: "3"

services:
  halo:
    image: halohub/halo:2.13
    container_name: halo
    restart: on-failure:3
    network_mode: "host"
    volumes:
      - ./halo:/root/.halo2
    command:
      # 修改为你自己的 MySQL 数据库配置信息,这里使用的数据库就是下一步创建的 halo 数据库
      - --spring.r2dbc.url=r2dbc:pool:mysql://MySQL数据库地址:3306/halo
      - --spring.r2dbc.username=数据库用户名
      - --spring.r2dbc.password=数据库密码
      - --spring.sql.init.platform=mysql
      # 外部访问地址,通常是你的域名地址
      - --halo.external-url=http://halo.hollowman.cn/
      # 端口号 默认8090
      - --server.port=8090

七、给自己的 Mysql 数据库创建一个 halo 数据库

连接 mysql 数据库:

sudo mysql -uroot -p

创建halo数据库:

create database halo;

八、通过 docker compose 部署和创建容器

在 docker-compose.yaml 文件所在的目录通过 docker compose 来部署容器

sudo docker compose up -d

九、添加反向代理

参考前一篇文章的第四点 添加反向代理服务

十、初始化和使用 Halo

在浏览器输入:halo.hollowman.cn/console 即可初始化 Halo 个人网站了,而数据库使用的则是 mysql。