ubuntu22.04 docker-compose安装postgresql数据库

在 Ubuntu 22.04 上使用 Docker Compose 来安装和运行 PostgreSQL 数据库的过程如下:

1. 创建 Docker Compose 文件

在项目文件夹中创建一个 docker-compose.yml 文件,以配置 PostgreSQL 数据库的服务。

bash 复制代码
mkdir postgres_docker
cd postgres_docker
touch docker-compose.yml

2. 配置 docker-compose.yml

在 docker-compose.yml 中定义 PostgreSQL 服务的配置,设置数据库名称、用户名和密码等。

yaml 复制代码
version: '3.8'

services:
  postgres:
    image: postgres:14  # 使用 PostgreSQL 14 版本,你可以选择其他版本
    container_name: postgres_container  # 容器名称
    environment:
      POSTGRES_DB: mydatabase  # 数据库名称
      POSTGRES_USER: myuser    # 数据库用户名
      POSTGRES_PASSWORD: mypassword  # 数据库密码
    volumes:
      - pg_data:/var/lib/postgresql/data  # 持久化数据卷
    ports:
      - "5432:5432"  # 映射端口

volumes:
  pg_data:

3. 运行 Docker Compose

在终端中运行以下命令来启动 PostgreSQL 容器:

bash 复制代码
docker-compose up -d

这个命令会下载 PostgreSQL 的 Docker 镜像并启动容器。

4. 验证 PostgreSQL 是否运行

要确认 PostgreSQL 容器是否已成功启动,可以使用以下命令查看正在运行的容器:

bash 复制代码
docker ps

你应该会看到一个名为 postgres_container 的容器在端口 5432 上运行。

5. 连接到 PostgreSQL 数据库

可以使用 psql 客户端连接到 PostgreSQL 数据库,或者通过任何 PostgreSQL GUI 工具(如 DBeaver、pgAdmin)连接。也可以直接进入容器并使用 psql:

bash 复制代码
docker exec -it postgres_container psql -U myuser -d mydatabase

这将打开 psql 命令行界面,连接到 mydatabase 数据库。

6. 停止和删除容器

如果想停止并删除容器,可以使用以下命令:

bash 复制代码
docker-compose down

这将停止 PostgreSQL 容器,并释放端口 5432。

完整配置总结

现在,你的 docker-compose.yml 文件中配置了 PostgreSQL,并且数据将保存在一个持久化卷中。你可以通过端口 5432 访问 PostgreSQL 数据库,并根据需要修改 POSTGRES_DB、POSTGRES_USER 和 POSTGRES_PASSWORD 的值来设置数据库名称、用户名和密码。

相关推荐
ClickHouseDB4 小时前
ClickHouse Cloud 与 Snowflake 实时性价比对比:CostBench 测试中的 412 倍差距来
运维·数据库·系统架构
m0_639906944 小时前
Redis入门|五种数据结构、使用场景、持久化RDB&AOF
数据结构·数据库·redis
todoitbo5 小时前
群晖NAS部署JmalCloud:Docker安装、文件管理、博客与公网访问完整教程
运维·docker·容器
时间售卖铺5 小时前
触发器与函数实战:MySQL高效编程秘诀
运维·数据库·mysql·云原生
qetfw5 小时前
UOS MariaDB 数据库:安装、最小权限与备份验证
linux·数据库·mariadb·uos
数智园区合作社6 小时前
问数平台怎么把同一个指标锁成一个数
大数据·数据库·人工智能·ai
lbb 小魔仙7 小时前
Windows搭建PaddleOCR+飞书Webhook自动打卡通知机器人:识别、推送与远程触发完整教程
数据库·人工智能·prometheus·时序数据库
captain3768 小时前
MyBatis操作数据库(入门2)
java·数据库·spring boot·后端·spring·mybatis
心中有你02148 小时前
Java实现Dijkstra最短路径算法(邻接表 + 优先队列)
java·数据库·算法
龙亘川9 小时前
综合素质评价业务建模:从过程性评价到成长档案全链路闭环
数据库·智慧城市·数据可视化