概述
本文将详细介绍如何在绿联云 NAS 设备上通过 Docker 快速部署并配置 PostgreSQL 数据库服务。整个过程包括启用 Docker 服务、编写 Docker Compose 配置文件、启动容器以及连接验证等步骤,帮助您轻松搭建一个稳定可靠的数据库环境。
1.登录绿联云NAS启用Docker服务
首先,登录您的绿联云 NAS 管理界面。进入 “应用中心” 或 “Docker” 模块,确保已安装并启用了 Docker 服务。
2.编写Docker Compose配置文件
接下来,创建一个 docker-compose.yml 文件,用于定义 PostgreSQL 容器的运行配置。该文件将指定镜像版本、环境变量、端口映射、数据卷挂载以及网络设置等关键参数。
配置说明:
image: postgres:16
:使用 PostgreSQL 16 官方镜像。container_name
:自定义容器名称,便于管理。restart: unless-stopped
:确保容器在系统重启后自动启动。- 环境变量:
POSTGRES_USER
:设置默认数据库用户。POSTGRES_PASSWORD
:请替换为您的安全密码。POSTGRES_DB
:初始化时创建的数据库名称。
- 端口映射:将宿主机的
54320
端口映射到容器的5432
(PostgreSQL 默认端口),避免与本地其他服务冲突。 - 数据卷挂载:
./data
:持久化存储数据库数据,防止容器删除后数据丢失。./init.sql
:用于初始化数据库结构或导入初始数据(如建表语句)。
- 自定义网络:使用外部网络
app_default
,并分配固定 IP 地址172.21.0.10
,便于其他服务稳定访问。
📌 注意:请提前创建
data
目录和init.sql
文件(若无需初始化可省略),并确保app_default
网络已存在。
version: '3.8'
services:
postgres:
image: postgres:16
container_name: postgres-db
restart: unless-stopped
environment:
POSTGRES_USER: pguser
POSTGRES_PASSWORD: *******
POSTGRES_DB: app_database
ports:
- "54320:5432"
volumes:
- ./data:/var/lib/postgresql/data
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
networks:
app_default:
ipv4_address: 172.21.0.10 # 固定 IP 地址
networks:
app_default:
external: true
3.启用PostgreSQL容器
保存配置文件后,在绿联云 NAS 的 Docker 管理界面中选择 “Docker Compose” 功能,上传或粘贴上述 docker-compose.yml
文件,点击 “立即部署” 开始创建并启动容器。
4.验证服务器运行状态
部署完成后,系统会自动拉取镜像并运行容器。您可以在容器列表中查看其运行状态。
5.连接PostgreSQL数据库
您可以使用任意 PostgreSQL 客户端(如 pgAdmin、DBeaver、Navicat 或命令行工具)连接数据库。
连接信息如下:
主机地址 | NAS 的局域网 IP 地址 |
端口 | 54320 (映射到容器的 5432) |
数据库名 | app_database |
用户名 | pguser |
密码 | ******* (您设置的实际密码) |
以 DBeaver 为例,填写连接信息后测试连接:
总结
通过以上五个步骤,您已成功在绿联云 NAS 上使用 Docker 部署了 PostgreSQL 数据库服务。
后续可根据实际需求,将此数据库用于个人项目、家庭应用(如媒体库、记账系统)或开发测试环境。