Docker 安装zookeeper

一、安装单机版

1、拉取镜像

Bash 复制代码
docker pull zookeeper

2、创建挂载目录

Bash 复制代码
mkdir -p /mydata/zookeeper/{conf,data,logs}

3、新建配置文件

Bash 复制代码
cd  /mydata/zookeeper/conf
vi zoo.cfg
Bash 复制代码
dataDir=/data
dataLogDir=/logs
tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181

4、单机主机启动容器

Bash 复制代码
docker run -d \
 --name zookeeper \
 --privileged=true \
 -p 2181:2181 \
 -e TZ="Asia/Shanghai" \
 --network host \
 --restart=always \
 -v /mydata/zookeeper/conf:/conf \
 -v /mydata/zookeeper/data:/data \
 -v /mydata/zookeeper/logs:/logs \
 zookeeper

命令说明:

  • --network host: 使用主机上的网络配置,如果不用这种模式,而用默认的bridge模式,会导致容器跨主机间通信失败
  • -v /mydata/zookeeper/conf:/conf: 主机的配置目录挂载到容器的/conf下,容器内的zkServer.sh默认会读取/conf/zoo.cfg下的配置
  • -v /mydata/zookeeper/data:/data:主机的数据目录挂载到容器/data下
  • -v /mydata/zookeeper/logs:/logs:主机的数据目录挂载到容器/logs下
  • 启动完成后,单机主机的2181端口开放出来了(注意:这种配置通过127.0.0.1:2181不能访问zookeeper,只能访问192.168.56.10:2181)

5、检查容器的启动情况

Bash 复制代码
docker exec -it zookeeper /bin/bash
Bash 复制代码
cd bin
Bash 复制代码
zkServer.sh status

成功如下:

相关推荐
AlfredZhao4 小时前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐1 天前
Linux内存扩容指南
linux
zylyehuo2 天前
Linux 彻底且安全地删除文件
linux
用户805533698032 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297912 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Patrick_Wilson3 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy3 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭3 天前
运行你的第一个Docker容器
后端·docker·容器
Web3探索者4 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo4 天前
Linux系统中网线与USB网络共享冲突
linux