halo的搭建博客方法
一、什么是Docker ,如何安装
我们推荐按照 Docker 官方文档安装 Docker,因为部分 Linux 发行版软件仓库中的 Docker 版本可能过旧。
Docker是一种开源的平台和工具,用于在容器中封装、分发和运行应用程序。容器是一种轻量级、可移植的环境,包含应用程序及其依赖项,可以在不同的计算环境中运行,而无需担心环境差异。
容器化: Docker使用容器技术,允许开发人员将应用程序及其所有依赖项打包到一个容器中。这个容器可以在任何支持Docker的环境中运行,而不受底层系统的影响。
镜像: Docker镜像是一个轻量级、独立的、可执行的软件包,包含运行应用程序所需的一切,如代码、运行时、系统工具、系统库等。镜像可以被构建、共享和版本控制。
容器: 容器是Docker镜像的运行实例。每个容器都是一个独立的、安全的执行环境,可以在同一主机上同时运行多个容器。容器可以快速启动、停止、迁移和复制。
Dockerfile: Dockerfile是一个文本文件,包含构建Docker镜像所需的指令和配置。通过Dockerfile,开发人员可以定义镜像中的环境、依赖项和执行步骤。
Docker Compose: Docker Compose是一个工具,允许定义和管理多容器的Docker应用程序。通过一个单独的文件,开发人员可以配置应用程序的服务、网络和卷等。
Docker Hub: Docker Hub是一个在线的镜像仓库,开发人员可以在其中分享、存储和获取Docker镜像。这使得开发人员可以轻松地在其应用程序中使用已有的镜像,也可以分享自己创建的镜像。
Docker的主要优势之一是提供了一致的开发、测试和部署环境,减少了由于不同环境导致的问题。它被广泛应用于持续集成、持续交付、微服务架构等现代应用程序开发和部署场景。
二、卸载旧版本
在安装 Docker Engine 之前,您需要卸载所有冲突的软件包。
Distro 维护者在 APT 中提供 Docker 软件包的非官方发行版。您必须先卸载这些软件包,然后才能安装正式版的 Docker Engine。
要卸载的非官方软件包有:
docker.iodocker-composedocker-compose-v2docker-docpodman-docker
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done三、使用 apt 存储库安装
在新主机上首次安装 Docker Engine 之前,需要设置 Docker 存储库。之后,您可以从存储库安装和更新 Docker。
# Add Docker's official GPG key:
sudo apt update
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] 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 软件包
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin五、通过运行镜像来验证Docker Engine安装是否成功 hello-world
sudo docker run hello-world查看版本
docker -v启用状态
sudo systemctl status docker启动服务
sudo systemctl start docker停止启动
sudo systemctl stop docker开机自启
sudo systemctl enable docker(可选)重新加载配置
sudo systemctl reload docker查询halo
sudo docker search halo拉取最新版本
sudo docker pull halohub/halo:2.11查看镜像
sudo docker images创建容器
sudo docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.11停止容器:
sudo docker stop halo启用容器
sudo docker start halo删除容器:
sudo docker rm halo使用新的端口重新运行容器:
sudo docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.11检查一下开放了哪些端口
netstat -tulpn下载端口开放工具
sudo apt install ufw启用防火墙
sudo ufw enable
出现提示选y关闭防火墙
sudo ufw disable端口启用
sudo ufw allow 8090查看启用
(可选)如果你想确保规则存在,也可以通过删除后重新添加来确保:
bashCopy codesudo ufw delete allow 8090
sudo ufw allow 8090端口启用状态
sudo ufw status清屏
clear查看状态
sudo docker ps -a(可选)如果重新安装halo,先停止运行中的容器
sudo docker stop halo
sudo docker rm halo更新 Halo,修改版本号后,按照最初安装的方式,重新创建容器即可。
sudo docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.11登录访问
公网ip地址:8090主题登录
http://公网ip地址:8090/console/theme
评论区