环境准备
应用实例
1. 绪山真寻Bot|PostGres
-
Docker-compose
services: db: image: postgres restart: always environment: POSTGRES_PASSWORD: 123456 #密码 POSTGRES_USER: root #用户名 POSTGRES_HOST_AUTH_METHOD: Trust volums: /custom/mount:/var/lib/postgresql/data #宿主机映射(挂载)路径 ports: - 5432:5432 #数据库访问端口 Adminer: image: adminer restart: always ports: - 8080:8080 #通过http(s)://ip:8080 web界面管理数据库
⚠️ 请手动配置,不要通过ssh一把梭
-
进入
Adminer
http://localhost:8080 添加数据库
若有 公网ip或服务器,需要开放8080端口即可远程访问 http://hostname:8080
本案采用路由器
+群晖
方式,远程访问 http://域名:8080 路由器需配置端口转发路由器ip:端口
-->群晖ip:端口
-
选择合适的数据库 登陆
示例:"bind": "postgresql://admin:******@localhost:5432/QQBot" "sql": { "bind": "", "sql_name": "postgresql", "user": "admin", #数据库用户名 "password": "******", #数据库登陆密码 "address": "localhost", #数据库 地址 或 IP "port": "5432", #数据库配置端口 "database": "QQBot" #登陆后新建一个空数据库命名为 QQBot }
-
路由器
5432
端口转发 或 网关5432
端口开放 即可
2. Halo|MySQL
-
Docker-compose
# Use root/example as user/password credentials version: '3.1' services: db: image: mysql command: --default-authentication-plugin=mysql_native_password restart: always environment: MYSQL_ROOT_PASSWORD: example #MySQL数据库root身份登陆管理密码 bridge: - host adminer: image: adminer restart: always ports: - 8080:8080
可使用
host
模式免掉复杂的端口转发设置
⚠️ 请手动配置,不要通过ssh一把梭 -
Adminer调用MySQL
- 登陆Adminer http://localhost:8080
- 调用MySQL
系统 MySQL 服务器 群晖ip #使用host模式端口会自动识别 用户名 root #默认root 密码 example #自己设置的 MYSQL_ROOT_PASSWORD 密码
-
Halo挂载数据库目录
- 下载
application.yaml
到halo宿主机运行文件夹 - 注释 H2 database configuration.部分
- 启用 MySQL database configuration.部分
- 修改 datasource 下的 url 中的 ip 地址部分为容器名称并修改密码为您设定的 MySQL 密码
spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://群晖ip:3306/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true username: root password: example
本案中使用群晖设备
- 下载
评论区