当前位置: 首页 > article >正文

使用 Docker 部署 pSQL 服务器 的教程

如何使用 Edu 邮箱申请 Azure 订阅并开通免费 VPS

使用 Edu 邮箱不仅可以申请 Azure 的免费订阅来开通 VPS,还可以免费使用 Adobe 和 Notion 等软件,极大地提高学习和工作的效率。如果您还没有 Edu 邮箱,可以参考在线笔记s3.tebi.io/notes-image/edu%E7%AC%94%E8%AE%B0.pdf获取相关信息和申请方法。

新建一台 Ubuntu VPS 并通过 Docker 部署 pSQL 服务器

在获得 Azure 订阅后,您可以按照以下步骤在其中新建一台 Ubuntu VPS,并在该 VPS 上通过 Docker 部署 pSQL 服务器。以下是详细的教程:

1. Docker 和 pSQL 简介

Docker 是一个开源的应用容器引擎,允许开发者将应用及其依赖项打包成一个轻量级的容器,可以在任何环境中运行。它利用操作系统级的虚拟化来交付软件。

PostgreSQL (pSQL) 是一个功能强大的开源对象关系数据库系统,以其高性能和稳定性著称,常用于复杂的应用程序。

2. 在 Ubuntu 上通过 Docker 部署 pSQL 服务器
步骤一:更新系统

首先,确保您的系统是最新的。更新 Ubuntu 系统包:

sudo apt-get update sudo apt-get upgrade

步骤二:安装 Docker

安装 Docker 是部署 pSQL 服务器的关键步骤。执行以下命令来安装 Docker:

sudo apt-get install -y docker.io

启动 Docker 并设置其开机自启动:

sudo systemctl start docker sudo systemctl enable docker

验证 Docker 是否安装成功:

docker --version

步骤三:拉取 PostgreSQL 镜像

从 Docker Hub 拉取最新的 PostgreSQL 镜像:

docker pull postgres

步骤四:运行 PostgreSQL 容器

创建并运行 PostgreSQL 容器。此步骤中,我们设置了数据库名称、用户名和密码:

docker run --name my_postgres -e POSTGRES_DB=mydb -e POSTGRES_USER=myuser -e POSTGRES_PASSWORD=mypassword -p 5432:5432 -d postgres

上述命令的参数解释:

  • --name my_postgres:指定容器名称为 my_postgres
  • -e POSTGRES_DB=mydb:设置数据库名称为 mydb
  • -e POSTGRES_USER=myuser:设置数据库用户名为 myuser
  • -e POSTGRES_PASSWORD=mypassword:设置数据库密码为 mypassword
  • -p 5432:5432:将主机的 5432 端口映射到容器的 5432 端口。
  • -d:后台运行容器。
步骤五:验证 PostgreSQL 服务器

确认 PostgreSQL 服务器是否正常运行。进入 PostgreSQL 容器:

docker exec -it my_postgres bash

在容器内使用 psql 命令连接数据库:

psql -U myuser -d mydb

成功连接后,您可以执行 SQL 查询来验证数据库的功能。例如,创建一个表并插入数据:

CREATE TABLE test (id SERIAL PRIMARY KEY, name VARCHAR(50)); INSERT INTO test (name) VALUES ('DockerTest'); SELECT * FROM test;

通过以上步骤,您已经成功在 Ubuntu VPS 上通过 Docker 部署了 PostgreSQL 服务器。现在可以根据需要配置和使用这个数据库。

以上就是通过 Docker 部署 pSQL 服务器的详细教程。希望这篇文章能帮助到您,并让您的开发工作更加高效。


http://www.kler.cn/a/529102.html

相关文章:

  • Vue 与 Electron 结合开发桌面应用
  • leetcode 844 比较含退格的字符串
  • LabVIEW无线齿轮监测系统
  • Redisson详解
  • C++ strcpy和strcat讲解
  • 力扣257. 二叉树的所有路径(遍历思想解决)
  • 如何为用户设置密码
  • 爬取豆瓣书籍数据
  • 本地部署DeepSeek教程(Mac版本)
  • 一个数如果恰好等于他的因子之和,这是就成为“完数“,例如6=1+2+3.编程找出1000以内的所有完数
  • 2025.2.1(迭代器,auto,for遍历)
  • PID算法的数学实现和参数确定方法
  • 新集成,Sui 的 Phantom 时代正式开启!
  • Java小白入门教程:数组(一维数组)
  • kamailio-ACC_RADIUS模块详解,附加AAA协议
  • 一文读懂Python之random模块(31)
  • C++:虚函数与多态性习题2
  • 洛谷 P1734 最大约数和 C语言
  • 讯飞绘镜(ai生成视频)技术浅析(三):自然语言处理(NLP)
  • 手撕Vision Transformer -- Day2 -- Dataset
  • 02数组+字符串+滑动窗口+前缀和与差分+双指针(D2_字符串(D2_刷题练习))
  • 每日 Java 面试题分享【第 18 天】
  • Java - 引用类型:强引用、软引用、弱引用和虚引用详解
  • java CountDownLatch和CyclicBarrier
  • Spring AOP 入门教程:基础概念与实现
  • ASP.NET Core 启动并提供静态文件