Skip to content

hraulein/mind-map

 
 

Repository files navigation

Simple mind map (Docker Containers)

Build Status Docker Version Docker Pulls Docker Image Size GitHub issues npm-version license


中文 | English


基于 Gin 框架构建跨平台 HTTP 服务,通过 Docker 的多平台构建能力,实现 mind-map 在不同硬件架构上运行使用。

  • 跨平台兼容:支持 amd64 arm64 | arm/v8 arm/v7
  • 开箱即用:预配置 mind-map 静态文件,无需额外运行时依赖

在线地址: https://mind-map.hraulein.com
镜像地址: https://hub.docker.com/r/hraulein/mind-map

如在部署过程中遇到镜像启动失败等相关问题, 请提 issue

  • 目前容器的运行环境为 scratch(不包含 sh/bash), 不影响 mind-map 的运行
    如需挂载你自定义的 mind-map 的静态文件, 将你的文件目录映射到容器内部的 /app 下即可

  • 目前 httpdGIN 采用配置文件形式读取配置, 如需自定义配置, 请先将容器内部的 /conf.d/ 目录拷贝出来后再挂载

使用方式

1. docker-compose.yaml

services:
  mind-map:
    image: hraulein/mind-map:latest
    container_name: mind-map
    restart: always
    ports:
      - "8080:8080"  
    volumes:                   
      - ./your_config_dir:/conf.d
  #   - ./your_dist_dir:/app                               # 如果你想自定义 mind-map 的静态文件


2. docker cli

docker run -d --name mind-map -p 8080:8080 -v ./your_config_dir:/conf.d hraulein/mind-map:latest

nginx 配置参考

  • HTTP 重定向 HTTPS
# /etc/nginx/conf.d/00-redirect.conf

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    return 301 https://$host$request_uri;
}
  • SSL 证书相关配置
# /etc/nginx/conf.d/include/ssl_parameter

ssl_certificate '/etc/nginx/*****/*****/fullchain.cer';    # <<< 替换为实际的证书地址
ssl_certificate_key '/etc/nginx/*****/*****/*****.key';    # <<< 替换为实际的证书地址
ssl_trusted_certificate '/etc/nginx/*****/*****/ca.cer';   # <<< 替换为实际的证书地址
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_session_tickets off;
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_protocols TLSv1.2 TLSv1.3;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 1.1.1.1 valid=300s;
resolver_timeout 5s;
add_header Strict-Transport-Security "max-age=31536000" always;
  • nginx 反向代理配置
# /etc/nginx/conf.d/mind-map.conf

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    http2 on;
    include ./conf.d/include/ssl_parameter;  
  
    server_name mind-map.hraulein.localhost;               # <<< 替换为你的域名
    set $IPADDR 172.16.19.156;                             # <<< 替换为你服务器的内网 IP 地址

    location / {
        proxy_pass http://$IPADDR:8080;                    # <<< 替换为 mind-map 服务实际映射端口
        proxy_set_header Host $host;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection upgrade;
        proxy_set_header Accept-Encoding gzip;
    }    
    # include ./conf.d/include/err_pages;
}

支持一下

如果 Docker 镜像对你有帮助 , 不妨请我喝杯阔落解解馋~

Image

About

自动构建并维护 wanglin2/mind-map 的 docker 多架构镜像

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 71.6%
  • Vue 26.9%
  • HTML 0.5%
  • CSS 0.4%
  • Go 0.3%
  • Less 0.2%
  • Dockerfile 0.1%