步骤/目录:
0.Pi Dashboard简介
1.LNP部署Pi Dashboard

本文首发于个人博客https://lisper517.top/index.php/archives/36/,转载请注明出处。
本文的目的是使用docker、docker-compose在树莓派上运行Pi Dashboard。
本文实验日期为2022年8月27日。本文使用的是树莓派4B(内存8G版),系统为Pi OS 64位桌面版(2022年4月4日更新,镜像名 2022-04-04-raspios-bullseye-arm64.img )。

0.Pi Dashboard简介

在windows系统中,可以用任务管理器便捷地查看电脑的CPU、显卡等使用情况;对于树莓派,这样的信息收集起来比较麻烦,好在有大神开发了Pi Dashboard,这是一个网页查看树莓派状态的工具,详细介绍在 https://make.quwj.com/project/10 。简单来说Pi Dashboard的部署和Typecho类似,也是放在nginx的文件夹里、搭配php使用,不同点是不需要mysql。

1.LNP部署Pi Dashboard

这里用docker-compose运行nginx、php服务,最后把Pi Dashboard放在nginx的网页根目录下即可。

在树莓派上进行如下操作:

mkdir -p /docker/pi_dashboard/conf/nginx
mkdir /docker/pi_dashboard/www
mkdir /docker/pi_dashboard/ssl_cert
docker pull nginx:1.23.1
docker pull php:8.1-fpm
nano /docker/pi_dashboard/conf/nginx/default.conf

写入以下内容:

server {
  listen 50443 ssl;
  server_name www.lisper517.top;
  ssl on;
  ssl_certificate /ssl_cert/.pem文件名;
  ssl_certificate_key /ssl_cert/.key文件名;
  ssl_session_timeout 5m;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_prefer_server_ciphers on;
  location / {
    index  index.html index.htm index.php default.html default.htm default.php;
    root /var/www/html;
  }
  location ~\.php$ {
    fastcgi_pass php:9000;
    fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;
    include fastcgi_params;
  }
  error_page 497 https://$host:50443$request_uri;
}

这是使用https的配置,注意更改 www.lisper517.top 和ssl证书的两个文件名。如果只使用http,则写入如下内容:

server {
  listen 50443;
  location / {
    index  index.html index.htm index.php default.html default.htm default.php;
    root /var/www/html;
  }
  location ~\.php$ {
    fastcgi_pass php:9000;
    fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;
    include fastcgi_params;
  }
}

但是要注意,无论使用http还是https,都尽量不要把这个页面开放到公网。
然后编写compose模板:

nano /docker/pi_dashboard/docker-compose.yml

写入如下内容:

version: "3.9"

services:
  nginx:
    image: nginx:1.23.1
    ports:
      - "50443:50443"
    volumes:
      - /docker/pi_dashboard/conf/nginx:/etc/nginx/conf.d
      - /docker/pi_dashboard/ssl_cert:/ssl_cert
      - /docker/pi_dashboard/www:/var/www/html
    logging: 
      driver: syslog
    restart: always

  php:
    image: php:8.1-fpm
    volumes:
      - /docker/pi_dashboard/www:/var/www/html
    logging: 
      driver: syslog
    restart: always

无论http还是https都可以用这个compose模板。然后开启服务:

cd /docker/pi_dashboard
docker-compose config
docker-compose up

看一下日志是否正常。如果用https记得用WinSCP把证书放到正确的位置;然后到 Pi Dashboard 的github页 把压缩包下载下来(Code里面,Download ZIP),解压后用WinSCP放到树莓派的/docker/pi_dashboard/www目录下,最好不要放整个文件夹,而是把里面的文件放到该目录下;如果放整个文件夹的话,把这个文件夹改名为 pi-dashboard 。
最后,浏览器访问 树莓派ip:50443 即可看到 Pi Dashboard ;如果放整个文件夹,则访问 树莓派ip:50443/pi-dashboard 。

标签: 树莓派, docker, docker-compose, Pi Dashboard

添加新评论