docker离线装kafka
时间: 2025-06-14 16:51:02 浏览: 5
### 在离线环境中使用 Docker 部署 Apache Kafka
为了在没有互联网连接的情况下成功部署 Apache Kafka 容器,需提前准备所有必要的镜像文件并将其传输到目标机器上。具体操作如下:
#### 准备阶段
确保有一台能够访问互联网的计算机来下载所需的 Docker 镜像。执行命令 `docker pull` 来获取官方提供的最新版本 Kafka 和其他依赖服务(如 Zookeeper)的镜像[^1]。
```bash
docker pull wurstmeister/kafka
docker pull zookeeper
```
保存这些已拉取好的镜像至本地磁盘作为 tar 文件以便后续导入:
```bash
docker save -o kafka.tar wurstmeister/kafka
docker save -o zookeeper.tar zookeeper
```
将生成的 `.tar` 文件拷贝到即将运行 Kafka 的离线服务器中去。
#### 导入镜像
到达无网络连接的目标主机之后,通过加载之前导出过的 tar 包恢复相应的 Docker 镜像:
```bash
docker load --input=kafka.tar
docker load --input=zookeeper.tar
```
确认所需的所有镜像都已经被正确载入:
```bash
docker images ls
```
此时应该能看到刚刚加载成功的两个镜像条目。
#### 启动服务
编写适合当前环境配置需求的 `docker-compose.yml` 文件定义好各组件之间的关系与参数设置[^2]。由于处于完全隔离状态,则务必指定固定 IP 地址而非默认动态分配方式;另外还需注意调整广告地址使得集群内部成员间可以互相发现对方位置。
最后利用此组合件一键式启动整个系统:
```yaml
version: '3'
services:
zookeeper:
image: zookeeper
container_name: zookeeper
ports:
- "2181:2181"
environment:
ZOOKEEPER_CLIENT_PORT: 2181
kafka:
image: wurstmeister/kafka
depends_on:
- zookeeper
ports:
- "9092:9092"
environment:
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
```
```bash
docker-compose -f docker-compose.yml up -d
```
以上就是在封闭局域网内基于 Docker 实现单节点 Apache Kafka 平台的方法概述。
阅读全文
相关推荐

















