个人建站相关应用整理

内容目录

本人使用Docker,由整理几个个人感觉不错的应用

一、Portainer – Docker管理工具

Portainer 为网页版Docker管理工具,可无需登录NAS安装Docker应用。官方版本不支持中文版,可配置三方中文版,安装及配置中文版可见《群晖、威联通docker管理工具portainer安装及汉化教程2022最新版本》


二、DDNS-GO 内网穿透工具

威联通的QNAP本身注册后自带网址可实现公网访问,不过速度较慢,由此可使用DDNS-GO公网访问。安装配置可见《NAS及PC公网访问实现》


三、Flare – Portail 主页

Flare 页面简化,操作简单,无需数据库,加载速度快。可修改配置文件也可以使用在线配置。自带大量统一图标可选。
可使用Portainer创建自定义模版或使用NAS的Docker创建应用程序,项目中example文件夹中有安装代码实例。本人使用docker-compose代码如下:

version: '3'

services:
    flare:
        image: soulteary/flare:latest
        restart: always
        command: flare --nologin=0 --visibility=private
        environment:
            - FLARE_DISABLE_LOGIN=0
            - FLARE_USER=user
            - FLARE_PASS=pwsword
        ports:
            - 5005:5005
        volumes:
            - /share/flare:/app

四 Mariadb – 数据库

Mariadb作为其他应用使用的数据库应用。默认安装即可。可配合phpmyadmin管理工具使用。phpMyAdmin为数据库网页版管理工具。可使用docker-comprose 安装。
代码如下:

version: '3'

services:
  db:
    image: mariadb:10.6
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: notSecureChangeMe

  phpmyadmin:
    image: phpmyadmin
    restart: always
    ports:
      - 8080:80
    environment:
      - PMA_ARBITRARY=1

安装完成后,在容器中的my.conf文件中添加

[mysql]
max_connections = 2000
skip-name-resolve

五、NextCloud – 私有云盘服务–Seafile

NextCloud支持浏览器、移动端、PC端上传下载使用。内含多种插件。安装时做好端口映射外需要将文件映射到自建文件夹中。

NextCloud更换为Seafile。安装文档见Docker 安装Seafile,实现个人网盘与文档在线编辑


六、 Alist – 云盘整合工具

Alist 可集成百度网盘、阿里云盘等国内各大网盘。支持各大网盘上传下载。


七、WordPress – 建站工具

WordPress 含有大量主题与插件,可支持博客、商务等多种网站建设。每种主题均可自定义。
如果出现代码块格式错误可按《解决Githuber MD插件代码高亮不能正常工作的问题》操作处理。

使用Nginx反向代理后获取不到真实IP,可参照《WordPress+Nginx取得真实IP》操作处理。

推荐插件:邮件服务(WP Mail SMTP) 登录页面替换(WPS Hide login) Markdown编辑器(WP Githuber MD) 缓存(WP Super Cache)

可使用docker-comprose安装,数据库用户名密码表名等可自行修改,如未安装数据库使用如下代码:

version: '3'

services:

  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql

volumes:
  wordpress:
  db:

若已安装数据库则使用如下代码:

version: '3'

services:

  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: ip:3306
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html

Nginx反向代理设置,路径/xmlrpc.php需要单独处理,此路径会被攻击,用于破解账号密码。

location / {

    set $blog http://blog.temp.com;
    proxy_pass $blog;
    proxy_http_version    1.1;
    proxy_cache_bypass    $http_upgrade;

    proxy_set_header Upgrade              $http_upgrade;
    proxy_set_header Connection           "upgrade";
    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_set_header X-Forwarded-Proto    $scheme;
    proxy_set_header X-Forwarded-Host     $host;
    proxy_set_header X-Forwarded-Port     $server_port;
}
location ~* /xmlrpc.php {
    deny all;
}

八、CodiMD – Markdown协同笔记工具

CodiMD是基于HackMD开发。使用Markdown作为编辑工具。该工具支持协同编辑,也可私人查看、分享。
docker-comprose代码如下:

version: "3"
services:
  codimd:
    image: hackmdio/hackmd:latest
    environment:
      - CMD_DB_URL=mysql://name:password@ip:3306/database
      - CMD_USECDN=false
    ports:
      - "3000:3000"
    volumes:
      - upload-data:/home/hackmd/app/public/uploads
    restart: always
volumes:
  upload-data: {}
  • 海报
  • 打赏
  • 分享
海报图正在生成中...
分享到...
请选择打赏方式
  • 微信
  • 支付宝

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注