1panel mysql连接失败解决办法

森岩
2025-09-13 / 0 评论 / 91 阅读 / 正在检测是否收录...

在1panel里使用dockercomposer部署cashbook的时候,使用的是DATABASE_URL方式连接服务器
发现怎么也连不上1panel自带的mysql
记录解决过程

一、创建mysql数据库

没什么好说的,在1panel的mysql里面新加一个

二、编写DATABASE_URL

一般形式为:

DATABASE_URL=mysql://username:password@1Panel-mysql-sqlname:3306/foldname

在cashbook的dockercomposer文件中,应为:

DATABASE_URL: "mysql://username:password@1Panel-mysql-sqlname:3306/foldname"
三、使mysql和cashbook在同一个网络中

这点坑了我最久,直接给出示例

version: '3.8'

services:
  cashbook:
    build: .
    container_name: cashbook-app
    ports:
      - "9090:9090"
    environment:
      - NODE_ENV=production
      - DATABASE_URL=mysql://username:password@1Panel-mysql-CHsY:3306/cashbook
    networks:
      - 1panel-network
      - default  # 保留默认网络以防需要其他服务通信
    restart: unless-stopped
    volumes:
      - ./logs:/app/logs  # 如果需要日志持久化

networks:
  1panel-network:
    external: true  # 声明这是外部已存在的网络
    name: 1panel-network
  default:
    driver: bridge
0

评论

博主关闭了所有页面的评论