Docker 搭建容器化 SQL 环境


为什么使用 Docker 搭建学习环境?

只要操作系统存在 Docker 引擎,开发者可以不需要关心应用搭建时的环境问题,安装与配置,以及解决不同发行版的库冲突,运行docker pull下载应用的镜像即可使用。

Docker 安装

  • OS Platform:Ubuntu 22.04
  • RDBMS: Postgres

Install Docker Engine on Ubuntu

获取 RDBMS 镜像

mysql

postgres

这里以 Postgres 为例,首先下载基于 alpine 的镜像

docker pull postgres:alpine

命名容器为postgresql,将容器的5432端口映射到本地的5432端口,设置 postgres 用户的密码,启动容器

docker run --name postgresql -p 5432:5432 -e POSTGRES_PASSWORD=password -d postgres:alpine

连接至容器

docker exec -it postgresql psql -U postgres
psql (x.x)
Type "help" for help.

postgres=#

进入容器交互模式

docker exec -it CONTAINER bin/bash

其他常用命令

启动/停止容器

启动一个或多个已经停止的容器

docker container start

停止一个或多个正在运行的容器

docker container stop

列出容器/镜像

列出所有容器(默认只显示运行中的容器)

docker container ls

列出所有镜像(默认隐藏中间镜像)

docker image ls

移除容器/镜像

移除一个或多个容器

docker rm

移除一个或多个镜像

docker image rm