以技术洞察驱动商业进化

Prosperlytics Lab · 实验记录 002

Install Docker Engine Date Posted:2025-12-01Creato…

Install Docker Engine

Date Posted:2025-12-01
Creator:Rex(Prosperlytics)

实验记录:使用 Docker 搭建基础运行环境(Node1)

一、为什么我要在量化交易分布式系统中使用 Docker?

在搭建一个分布式量化系统(Kafka + Flink + Python Producers/Consumers)时,Docker 是必不可少的基础设施,原因主要有:


1. 环境一致性(Environment Consistency)

你的 5 台节点硬件一致,但未来的软件环境一定会逐渐不同。
如果不用 Docker:

  • 每台机器都要手动安装 Kafka、Flink、Python 环境
  • 环境不一致 → 难调试、难部署
  • 升级版本时容易出错

Docker 容器可以保证每台机器跑的服务是完全一致的。


2. 快速启动与关闭服务(Service Isolation)

Kafka、Zookeeper、Flink 等服务本质上都是大型进程。
用 Docker:

  • 不会污染系统环境
  • 容器坏了可直接删掉重来
  • 每个服务都可以单独运行、单独停止

例如:
启动 Kafka → 一条命令
删除 Kafka → 一条命令
换版本 → 换镜像即可


3. 容器化 = 分布式系统的标准能力

世界上所有现代大规模分布式系统都运行在容器中:

  • 华尔街高频交易平台
  • 大型数据流平台(Kafka/Flink/Spark)
  • 微服务架构
  • AI 模型推理系统

4. 为未来扩容做准备

你的项目将来可能变成:

  • 多节点 Kafka 集群
  • 多节点 Flink JobManager + TaskManager
  • 分布式 MySQL / Redis
  • Python 强化学习策略批处理系统

如果使用 Docker Swarm、Kubernetes,你就可以几分钟扩容:

docker service scale flink-taskmanager=10

这就是你研究分布式量化系统的核心意义。

二、实际安装过程记录

Step 1 — 在每台机器安装 Docker

在 node1、node2、node3、node4、node5 全部执行以下命令:

sudo apt update -y
sudo apt install -y docker.io docker-compose
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER

然后退出 SSH 再重新进来,运行:

docker run hello-world

如果看到 “Hello from Docker!”,就成功了。

rex@note1:~$ docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.
......
The rest is omitted, so I won't copy it here.

+

留下评论