Docker 与数据库环境
Docker 是一个开源的容器化平台,它通过虚拟化操作系统级别的隔离来提供高效的资源利用。Docker 容器可以将应用程序及其所有依赖打包到一个轻量级的、可移植的容器中运行,确保环境的一致性。它解决了“在我的机器上没问题”的困扰,保证应用在任何环境中都能正常运行。
1. Docker 的优点
轻量级:相较于传统虚拟机,Docker 容器启动速度极快,占用资源少。
易于扩展:可以轻松打包、分发和运行应用。
一致性:从开发到生产环境的一致性,确保代码在各个环境中的稳定运行。
2. Docker 安装与使用
2.1. Docker 安装与使用
1. 前往 Docker 官方网站 Docker for Mac 下载 Docker Desktop。
2. 下载 .dmg 文件并双击安装,按照指示拖动 Docker 到应用程序文件夹。
3. 安装完成后,打开 Docker Desktop,系统托盘上会出现 Docker 图标,等待状态显示为 Docker is running 即表示启动成功。
4. 在终端中验证 Docker 安装:
docker --version
2.2. Windows 上安装 Docker
1. 前往 Docker 官方网站 Docker for Windows 下载 Docker Desktop。
2. 下载后运行 .exe 安装文件,按照提示完成安装。
3. 启动 Docker Desktop 并等待其显示 Docker is running。
4. 验证安装:
docker --version
2.3. Linux 上安装 Docker
1. 更新系统包索引
sudo apt-get update
2. 安装所需依赖
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
3. 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4. 添加 Docker APT 源
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
5. 安装 Docker
sudo apt-get update
sudo apt-get install docker-ce
6. 启动 Docker 服务并验证
sudo systemctl start docker
docker --version
3. Docker Desktop 安装与使用
Docker Desktop 提供了一个可视化的界面,让用户更方便地管理容器。下面介绍如何使用 Docker Desktop 安装 PostgreSQL 和 Redis。
3.1. 安装 bitnami/postgresql 并启动服务
1. 打开 Docker Desktop,点击 Images 标签页,搜索 bitnami/postgresql。
2. 拉取镜像
docker pull bitnami/postgresql
3. 启动容器
docker run --name postgres -e POSTGRESQL_PASSWORD=123456 -d bitnami/postgresql
这将创建并启动一个 PostgreSQL 容器,默认密码为 123456。或者通过 docker desktop 启动,启动时填写对应名称与参数即可。
3.2. 安装 bitnami/redis 并启动服务
1. 在 Docker Desktop 中搜索 bitnami/redis 并拉取镜像
docker pull bitnami/redis
2. 启动 Redis 容器
docker run --name redis -d bitnami/redis
这将启动一个 Redis 容器。或者使用 docker desktop 启动。
4. 安装 Navicat Premium 并连接 PostgreSQL
1. 前往 Navicat 官方网站 下载并安装 Navicat Premium。我这里提供一个
2. 打开 Navicat,点击左上角的 连接 按钮,选择 PostgreSQL。
3. 输入 PostgreSQL 容器的连接信息:
主机:localhost
端口:5432
用户名:postgres
密码:123456
4. 测试连接,确认无误后保存。
5. 连接成功后,点击 查询 ,输入 SQL 语句:
SELECT VERSION();
点击执行,确认查询结果为 2(或显示PostgreSQL版本信息),则表示 PostgreSQL 已成功安装并运行。
5. 使用 Navicat Premium/ DataGrip 连接 Redis 服务
1. 同样在 Navicat 中,选择 Redis 作为连接类型。
2. 输入 Redis 容器的连接信息:
主机:localhost
端口:6379
3. 测试连接,成功后保存。
4. 连接成功后,进入 Redis 服务,执行简单查询:
SET testkey "hello";
GET testkey;
如果返回结果为 hello,表示 Redis 连接成功。
6. Docker Compose
Docker Compose 是用于定义和运行多容器 Docker 应用的工具。你可以通过 docker-compose.yml 文件配置多个服务并一次性启动。
6.1. Docker Compose 安装与配置
安装 Docker Compose
1. 在 Mac 和 Windows 上,Docker Desktop 已默认包含 Docker Compose,不需要额外安装。
2. 对于 Linux 系统,使用以下命令安装:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-composedocker-compose --version
6.2. 编写 docker-compose.yml 文件
示例文件:
version: '3'
services:db:image: postgresenvironment:POSTGRES_PASSWORD: mysecretpasswordports:- "5432:5432"redis:image: redisports:- "6379:6379"
启动服务:
docker-compose up -d
查看运行状态:
docker-compose ps
6.3. Docker Compose 常用命令
docker-compose up -d:后台启动所有服务。
docker-compose down:停止并移除所有容器。
docker-compose logs:查看服务日志。
7. 拓展内容
Kubernetes (K8s):Kubernetes 是一个开源的容器编排平台,能够自动部署、扩展和管理容器化应用。它提供了强大的容器调度、负载均衡、服务发现等功能,适用于生产环境中的大规模容器管理。
K3s:一个轻量级的 Kubernetes 发行版,适用于资源有限的设备和边缘计算。
MicroK8s:由 Canonical 开发的 Kubernetes 发行版,专为开发环境设计,具有易于安装和使用的特点。