保姆级教程Docker部署Zookeeper官方镜像

目录

1、安装Docker及可视化工具

2、创建挂载目录

3、运行Zookeeper容器

4、Compose运行Zookeeper容器

5、查看Zookeeper运行状态

6、验证Zookeeper是否正常运行


1、安装Docker及可视化工具

Docker及可视化工具的安装可参考:Ubuntu上安装 Docker及可视化管理工具

2、创建挂载目录

bash 复制代码
# 创建宿主机Zookeeper挂载目录
sudo mkdir -p /data/docker/zookeeper

3、运行Zookeeper容器

bash 复制代码
# 拉取镜像
sudo docker pull zookeeper:3.8.0
 
# 运行容器
sudo docker run --privileged=true \
--restart=always --net=bridge \
-d --name=zookeeper \
-v /data/docker/zookeeper/data:/data \
-v /data/docker/zookeeper/log:/datalog \
-p 2181:2181 \
-e ZOO_MY_ID=1 \
zookeeper:3.8.0

参数解析如下:

|----------------------------------------|-------------------------------------|
| 参数 | 参数说明 |
| docker run | 运行 Docker 容器 |
| -d | 容器将在后台运行,而不是占用当前的终端会话 |
| --privileged=true | Docker会赋予容器几乎与宿主机相同的权限 |
| --net=bridge | 网络模式配置,默认是bridge,bridge表示使用容器内部配置网络 |
| --name zookeeper | 给容器命名为 zookeeper,以便于管理和引用该容器 |
| --restart=always | 设置容器重启策略,如 always、on-failure等 |
| -p 2181:2181 | 映射 zookeeper 接收客户端连接的端口 |
| -e ZOO_MY_ID=1 | 设置 zookeeper 实例的唯一 ID |
| -v /data/docker/zookeeper/data:/data | 将主机目录挂载到容器内,用于数据持久化 |
| -v /data/docker/zookeeper/log:/datalog | 将主机目录挂载到容器内,用于日志文件持久化 |

容器运行参数详解参考:Docker容器运行常用参数详解-CSDN博客

4、Compose运行Zookeeper容器

创建docker-compose.yml文件

bash 复制代码
sudo touch /data/docker/zookeeper/docker-compose.yml

文件内容如下:

bash 复制代码
version: '3'
 
services:
  zookeeper:
    image: zookeeper:3.8.0
    container_name: zookeeper
    restart: always
    ports:
      - "2181:2181"
    environment:
      ZOO_MY_ID: 1
    volumes:
      - /data/docker/zookeeper/data:/data
      - /data/docker/zookeeper/log:/datalog
    privileged: true
    network_mode: "bridge"

运行容器

bash 复制代码
#-f:调用文件,-d:开启守护进程
sudo docker compose -f /data/docker/zookeeper/docker-compose.yml up -d

5、查看Zookeeper运行状态

6、验证Zookeeper是否正常运行

首先,进入 Zookeeper 容器的 shell

bash 复制代码
docker exec -it zookeeper /bin/bash

然后,使用 Zookeeper 的命令行工具连接到 Zookeeper 服务器

bash 复制代码
zkCli.sh -server localhost:2181
相关推荐
敏叔V5871 小时前
当大模型遇上Spark:解锁大数据处理新姿势
大数据·分布式·spark
苏-言2 小时前
Docker深度解析:部署 SpringBoot 项目
运维·docker·容器
程序员JerrySUN4 小时前
Linux 系统上安装 Docker 方法详解与比较
linux·运维·docker
追风20194 小时前
阿里云 ubuntu22.04 中国区节点安装 Docker
阿里云·docker·云计算
❀͜͡傀儡师4 小时前
如何查看docker的containers 那个日志最大
运维·docker·容器
ζั͡山 ั͡有扶苏 ั͡✾4 小时前
ZooKeeper单节点详细部署流程
分布式·zookeeper·debian
DEARM LINER4 小时前
RabbitMQ 可靠性投递
java·分布式·后端·rabbitmq·ruby
苏-言4 小时前
RabbitMQ深度探索:创建消息队列
分布式·rabbitmq
nangonghen5 小时前
华为云kubernetes部署deepseek r1、ollama和open-webui(已踩过坑)
容器·kubernetes·ollama·open webui·deepseek