Docker-Compose部署十分方便,但是不太好处理服务器上除了Halo以外的服务,所以此处自定义一下配置。
Docker安装教程请参考——Docker Compose 部署Halo教程
Docker部署
#拉取镜像
docker pull ruibaby/halo
#运行容器
docker run -d --name halo -p 8090:8090 -v ~/halo:/root/halo ruibaby/halo
配置Nginx
修改nginx配置
vim /usr/local/nginx/conf/nginx.conf #自行选择自己nginx的安装目录
在http{ .. }种加入以下内容:
server {
listen 80;
server_name example.cn; #将example.cn修改成自己的域名
location / {
rewrite ^/(.*)$ /$1 break;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8090; #因为Docker将Halo映射到8090端口,所以我们需要转发到8090端口
}
}
SSL证书(采用Certbot)
不需要https可略过此步
#下载+授权
wget https://dl.eff.org/certbot-auto && chmod a+x certbot-auto
#选择安装SSL
./certbot-auto --nginx --nginx-server-root=/usr/local/nginx/conf
更多细节参考——github