knowledge/docs/docker/docker部署postgres数据库服务.md
2023-09-09 16:55:46 +08:00

91 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# docker部署postgres数据库服务
> 本文同时实现按中文拼音排序将默认语言环境设置为zh_CN.utf8
基于docker和docker-compose操作前要先安装这两个服务和工具。
## 创建存储目录
比如创建`/data/postgres/`目录。
```sh
mkdir /data/postgres -p
```
## 创建编排文件
创建文件`/data/postgres/docker-compose.yml`内容如下注意自己改postgres用户的密码
以host模式启动的编排文件
```yml
version: "3.1"
services:
db:
image: postgres:14
restart: always
environment:
POSTGRES_PASSWORD: NASDnyeUgql6U4I9fa
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- ./data:/var/lib/postgresql/data
network_mode:
host
```
以映射端口方式启动的编排文件:
```yml
version: "3.1"
services:
db:
image: postgres:14
restart: always
environment:
POSTGRES_PASSWORD: NASDnyeUgql6U4I9fa
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- ./data:/var/lib/postgresql/data
ports:
- 5432:5432
```
## 启动容器
在`/data/pgsql`目录下执行下面的命令:
```sh
docker-compose up -d
```
## 查看当前postgres版本
### 方法一 - 进入容器使用命令
先用`docker ps`命令找到postgres容器实例假设实例id是`52a63c60bb59`
```sh
docker exec -it 52a63c60bb59 /bin/bash
# 进入容器后执行下面命令
psql --version
# psql (PostgreSQL) 14.1 (Debian 14.1-1.pgdg110+1)
postgres --version
# postgres (PostgreSQL) 14.1 (Debian 14.1-1.pgdg110+1)
pg_config|grep VERSION
# VERSION = PostgreSQL 14.1 (Debian 14.1-1.pgdg110+1)
```
### 方法二 - 连接数据库使用查询命令
```sql
show server_version;
```
结果如下:
```txt
server_version |
------------------------------+
14.1 (Debian 14.1-1.pgdg110+1)|
```