【Nacos】Docker Nacos PostgreSQL版本

文章介绍了如何在NacosV2.2.2版本中配置使用PostgreSQL数据库,包括指定Docker镜像版本、新增环境变量以适配PostgreSQL,并展示了docker-compose运行示例。还提到了对镜像的优化,如改用更小的基础镜像amazoncorretto以减小镜像大小。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Nacos V2.2.2版本的PostgreSQL版本

因为未指定last版本,所以在pull的时候需要指定版本

如:

docker pull yangxj96/nacos-server-pgsql:v2.2.2-2

Docker仓库连接

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

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

用于适配PostgreSQL数据库

构建脚本是从Nacos Docker克隆后

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


一 新增的环境变量

变量名说明示例
PGSQL_URLJDBC URLjdbc: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.2.2-2
    container_name: nacos-pgsql
    privileged: true
    env_file:
      - "/Nacos/env/pgsql.env"
    network_mode: host
    volumes:
      - "/Nacos/logs/:/home/nacos/logs"

pgsql.env

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

三 更新日志

v2.2.2

初始版本

v2.2.2-1

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

v2.2.2-2

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

  • 切换基础镜像到amazoncorretto:8u362-alpine3.17-jre,大小只有150M左右
  • 优化一些操作,缩小包内容
  • 整体镜像缩减到278.7MB
以上均为自己理解的内容,也许会是误打误撞搞出来的. 如有哪里不正确,请见谅
Nacos 本身默认支持多种数据库,如 MySQL、Derby 等,但 PostgreSQL 并不在默认支持列表中。然而,通过社区的努力和源码的修改,已经可以实现 NacosPostgreSQL 的支持,尤其是在 Docker 部署环境下。 可以通过特定的 Docker 镜像来部署支持 PostgreSQLNacos 实例。这些镜像通常基于官方 Nacos 版本进行了定制化改造,以适配 PostgreSQL 数据库。例如,有提供基于 Nacos 2.1.0 修改的支持 PostgreSQL 12.x 的 Docker 镜像版本,该镜像不仅包含了 Nacos 服务,还内置了 PostgreSQL 数据库及其初始化 SQL 脚本,方便用户在容器化环境中快速部署和使用[^3]。 为了运行这样的镜像,需要准备一个 `docker-compose.yml` 文件来定义服务,并且可能还需要一个 `.env` 文件来设置环境变量,比如数据库连接信息等。下面是一个简单的 `docker-compose.yml` 示例: ```yaml version: "3" services: nacos: image: yangxj96/nacos-service-pgsql:v2.2.2-2 container_name: nacos-pgsql privileged: true env_file: - "/Nacos/env/pgsql.env" network_mode: host volumes: - "/Nacos/logs/:/home/nacos/logs" ``` 以及相应的 `.env` 文件内容示例: ``` PREFER_HOST_MODE=ip SPRING_DATASOURCE_PLATFORM=postgresql PGSQL_URL=jdbc:postgresql://localhost:5432/db?currentSchema=schema PGSQL_USERNAME=postgres PGSQL_PASSWORD=postgres ``` 以上配置可以帮助您启动一个使用 PostgreSQL 作为后端数据库的 Nacos 服务实例。需要注意的是,在部署之前,请确保您的环境满足所有必要的要求,包括但不限于正确安装 Docker、调整好镜像中的配置文件以及保证容器网络配置正确以便 Nacos 可以成功连接到 PostgreSQL 数据库[^4]。 此外,对于那些希望从头开始构建自己的 Nacos PostgreSQL Docker 镜像的人来说,也可以参考已有的项目结构和构建脚本来进行自定义开发和打包。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值