通过 Docker 部署 pSQL 服务器的教程

在这篇文章中,我们将深入探讨如何利用 Docker 在 Azure 上快速部署 PostgreSQL(pSQL)服务器。这个过程不仅简单高效,还能为你的开发环境提供强大的支持。

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

首先,你只需一个有效的教育邮箱(通常以 .edu.cn 结尾),即可申请 Microsoft Azure 的学生订阅。这个订阅为你提供 100 美元的免费额度,足够用来创建虚拟机和其他服务。申请过程无需信用卡,只需验证你的校园邮箱即可23。此外,拥有 Edu 邮箱的用户还可以申请免费的 Adobe Creative Cloud 和 Notion 等软件,这些工具将极大地提升你的学习和工作效率。如果你找不到申请 Edu 邮箱的途径,可以参考我往期的文章。

在 Azure 100 学生订阅中新建一台 Ubuntu VPS,并通过 Docker 部署 pSQL 服务器

软件简介

Docker 是一个开源平台,允许开发者打包应用及其依赖项到一个可移植的容器中,这样应用可以在任何环境中一致地运行。它简化了应用的部署和管理,尤其是在微服务架构中。PostgreSQL (pSQL) 是一个功能强大的开源关系数据库管理系统,以其稳定性和扩展性著称。它支持多种数据类型和高并发的访问,是许多企业和开发者的首选数据库。

部署步骤

以下是在 Ubuntu 系统上通过 Docker 部署 pSQL 服务器的详细步骤:

  1. 创建 Ubuntu 虚拟机
    登录到 Azure 门户,选择"创建资源",然后选择"虚拟机"。选择 Ubuntu 作为操作系统,并根据需要配置实例类型(推荐使用 B1s 规格以确保免费)。

  2. 安装 Docker
    在创建好的 Ubuntu 虚拟机上,运行以下命令以安装 Docker:

    sudo apt update sudo apt install docker.io -y sudo systemctl start docker sudo systemctl enable docker

  3. 拉取 PostgreSQL 镜像
    使用以下命令从 Docker Hub 拉取 PostgreSQL 镜像:

    sudo docker pull postgres

  4. 运行 PostgreSQL 容器
    使用以下命令启动 PostgreSQL 容器,并设置环境变量以配置数据库用户和密码:

    复制代码

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

    • --name my_postgres:为容器指定一个名称。
    • -e POSTGRES_USER=myuser:设置数据库用户名。
    • -e POSTGRES_PASSWORD=mypassword:设置数据库密码。
    • -d:后台运行容器。
    • -p 5432:5432:映射容器端口到主机端口。
  5. 验证 PostgreSQL 是否成功运行
    使用以下命令检查容器状态:

    复制代码

    sudo docker ps

  6. 连接到 PostgreSQL 数据库
    可以使用 psql 工具或任何支持 PostgreSQL 的客户端连接到数据库:

    复制代码

    psql -h localhost -U myuser -d postgres

以上步骤将帮助你在 Azure 上成功部署一个运行中的 PostgreSQL 数据库。通过这种方式,你可以快速搭建开发环境,支持你的项目需求。

相关推荐
小Pawn爷1 小时前
4.镜像仓库
docker
爱吃生蚝的于勒1 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习
The森2 小时前
Linux IO 模型纵深解析 01:从 Unix 传统到 Linux 内核的 IO 第一性原理
linux·服务器·c语言·经验分享·笔记·unix
期待のcode2 小时前
Redis的主从复制与集群
运维·服务器·redis
翼龙云_cloud2 小时前
腾讯云代理商: Linux 云服务器搭建 FTP 服务指南
linux·服务器·腾讯云
REDcker2 小时前
gRPC开发者快速入门
服务器·c++·后端·grpc
江湖有缘3 小时前
零基础入门:使用 Docker 快速部署 Organizr 个人主页
java·服务器·docker
wangjialelele3 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发
广州中轴线3 小时前
OpenStack on Kubernetes 生产部署实战(十三)
容器·kubernetes·openstack
HypoxiaDream3 小时前
LINUX-Ext系列⽂件系统
linux·运维·服务器