保姆级教程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
相关推荐
玉石观沧海28 分钟前
高压变频器故障代码解析F67 F68
运维·经验分享·笔记·分布式·深度学习
小马爱打代码2 小时前
分布式锁:原理算法和使用建议
分布式·算法
9091932212 小时前
SQL关键词标签在数据分析中的应用与实践
zookeeper
荣光波比3 小时前
K8S(一)—— 云原生与Kubernetes(K8S)从入门到实践:基础概念与操作全解析
云原生·容器·kubernetes
一叶飘零_sweeeet3 小时前
从 “黑盒“ 到 “透明“:SkyWalking 实战指南 —— 让微服务问题无所遁形
分布式·微服务·skywalking·分布式链路追踪
hello_2504 小时前
k8s基础监控promql
云原生·容器·kubernetes
ArabySide5 小时前
【ASP.NET Core】分布式场景下ASP.NET Core中JWT应用教程
分布式·后端·asp.net core
小杨的全栈之路5 小时前
生产级实践:在 Docker 中安全导入自签名证书,保障 Spring Boot 应用通信安全
docker·https
静谧之心6 小时前
在 K8s 上可靠运行 PD 分离推理:RBG 的设计与实现
云原生·容器·golang·kubernetes·开源·pd分离
小马爱打代码7 小时前
zookeeper:一致性原理和算法
分布式·zookeeper·云原生