保姆级教程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
相关推荐
夜影风1 小时前
RabbitMQ核心架构与应用
分布式·架构·rabbitmq
奥格列的魔法拖鞋~2 小时前
Docker-LNMP架构 创建多项目- 单个ngixn代理多个PHP容器服务
nginx·docker·eureka·架构·php·lnmp
为什么要内卷,摆烂不香吗6 小时前
Docker容器技术全面解析(一):入门
docker·微服务·容器
电商API_180079052476 小时前
大规模调用淘宝商品详情 API 的分布式请求调度实践
服务器·数据库·分布式·爬虫
探云抛雾؁ۣۖ8 小时前
Docker 实战:情感分析系统-容器化部署全流程(sa-logic、sa-webapp、sa-frontend )
运维·docker·容器·web app·情感系统
夜莺云原生监控9 小时前
Prometheus 监控 Kubernetes Cluster 最新极简教程
容器·kubernetes·prometheus
hkNaruto10 小时前
【Docker】openEuler 使用docker-compose部署gitlab-ce
docker·容器·gitlab
为什么要内卷,摆烂不香吗11 小时前
kubernetes(4) 微服务
linux·运维·微服务·容器·kubernetes
Light6013 小时前
模型驱动与分布式建模:技术深度与实战落地指南
分布式·生成式ai·元模型·crdt·模型驱动架构·分布式建模
thulium_20 小时前
使用 Docker 部署 PostgreSQL
docker·postgresql·容器