Linux安装docker以及halo博客系统
系统版本选择
debian10遇到问题情况较小 其次为Ubuntu18
最后选择centos7.9
安装docker
官方安装地址
https://docs.docker.com/engine/install/debian/
文章内容引用
https://blog.laoda.de/archives/docker-install-halo
安装halo博客系统
创建工作目录
mkdir ~/.halo && cd ~/.halo
下载配置文件到工作目录
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml
推送镜像
docker pull halohub/halo:1.6.0
创建容器
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:1.6.0
注意
此命令默认使用自带的 H2 Database 数据库。如需使用 MySQL,请参考:使用 Docker 部署 Halo 和 MySQL
-it: 开启输入功能并连接伪终端
-d: 后台运行容器
–name: 为容器指定一个名称
-p: 端口映射,格式为 主机(宿主)端口:容器端口 ,可在 application.yaml 配置。
-v: 工作目录映射。形式为:-v 宿主机路径:/root/.halo,后者不能修改。
–restart: 建议设置为 unless-stopped,在 Docker 启动的时候自动启动 Halo 容器。
打开 http://ip:端口号 即可看到安装引导界面。
安装lsof
apt install lsof
更新
先停止容器
docker stop halo
删除容器
docker rm -f halo
备份数据
cp -r ~/.halo ~/.halo.archive
清楚缓存
rm -rf ~/.halo/.leveldb
拉去最新镜像
docker pull halohub/halo:latest
查看最新版本镜像:https://hub.docker.com/r/halohub/halo ,我们推荐使用具体版本号的镜像,但也提供了 latest 标签的镜像,它始终是最新的。
创建
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:latest
卸载
sudo -i # 切换到root
docker stop halo
docker rm -f halo
rm -rf ~/.halo # 完全删除映射到本地的数据
配置Nginx反向代理实现域名访问
upstream halo {
server 127.0.0.1:8090;
}
server {
listen 80;
listen [::]:80;
server_name www.yourdomain.com;
client_max_body_size 1024m;
location / {
proxy_pass http://halo;
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;
}
}
或者
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;
}
帮助或者参考资料
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果