Skip to content
This repository was archived by the owner on Nov 21, 2024. It is now read-only.

yangxj96/nacos-server-pgsql-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nacos 的PostgreSQL版本


已归档,官方插件更新太慢。自己做插件适配一直有问题,还不好解决。 能力不够了。希望有缘人接棒~

当前pull:

docker pull yangxj96/nacos-server-pgsql:v2.3.2

docker pull ghcr.io/yangxj96/nacos-server-pgsql:v2.3.2

原版Nacos链接

具体的变量内容查看原版即可,只是我这边新增了几个变量

用于适配PostgreSQL数据库

构建脚本是从Nacos Docker克隆后

在build文件夹下的构建脚本构建的.进行过一些修改

数据库插件来自官方收录的仓库中下载

当前镜像构建脚本仓库链接


一 新增的环境变量

变量名 说明 示例
PGSQL_URL JDBC URL jdbc:postgresql://localhost:5432/db?currentSchema=schema
PGSQL_USERNAME 数据库用户名 postgres
PGSQL_PASSWORD 数据库密码 postgres

二 docker-compose运行示例

docker-compose 文件

version: "3"
services:
  nacos:
    image: yangxj96/nacos-service-pgsql:v2.3.2
    container_name: nacos-pgsql
    privileged: true
    env_file:
      - "/nacos/env/pgsql.env"
    network_mode: host
    volumes:
      - "/nacos/logs/:/home/nacos/logs"

pgsql.env

MODE=standalone
PREFER_HOST_MODE=hostname
SPRING_DATASOURCE_PLATFORM=postgresql
PGSQL_URL=jdbc:postgresql://localhost:5432/db?currentSchema=schema
PGSQL_USERNAME=postgres
PGSQL_PASSWORD=postgres

三 常见问题

  • caused: Incorrect result size: expected 1, actual 2;

目前发现这个问题应该是2.2.3版本的数据库有过改动,可以在当前镜像构建脚本仓库链接 的schema文件夹下获取到pgsql的导入脚本,

具体步骤为:

  1. 在现有的nacos中把配置文件等内容导出,
  2. 清空nacos连接的数据库,
  3. 使用schema文件夹下的脚本进行初始化
  4. 导入配置文件等内容
  • No DataSource set

PREFER_HOST_MODE=hostname;

需要设置为hostname,暂不清楚原因,在容器中会出现这个问题

猜测可能是设置为ip之后,不做处理,

不能用容器名或者ip访问到其他的容器或者主机的ip

四 更新日志

v2.3.2

升级nacos到2.3.2版本

v2.3.0

因打包后启动有分页的问题,但是查看插件源码后没找到问题, nacos的代码没看懂(尴尬),等待官方解决或者数据库插件适配 之后在打包

  • 更新nacos包到2.3.0版本

v2.2.3-dragonwell

  • 添加了以龙威11为java jdk的2.2.3版本
  • 下载命令 docker pull yangxj96/nacos-server-pgsql:v2.2.3-dragonwell

v2.2.2-2

之前下载后使用大概1.1GB左右,本次更新主要为缩小镜像大小

  • 切换基础镜像到amazoncorretto:8u362-alpine3.17-jre,大小只有150M左右
  • 优化一些操作,缩小包内容
  • 整体镜像缩减到278.7MB

v2.2.2-1

  • 修复docker 23.0.3 版本下无法运行
  • 添加 NACOS_AUTH_TOKEN,NACOS_AUTH_IDENTITY_KEY,NACOS_AUTH_IDENTITY_VALUE的默认值(和官方默认值一样)

v2.2.2

初始版本

About

Docker中Nacos构建的PostgreSQL版本

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages