Docker安装Zookeeper
前提条件:Linux上安装Docker程序。
下载镜像
执行以下命令下载Zookeeper镜像:
docker pull zookeeper
-- 执行结果
Using default tag: latest
latest: Pulling from library/zookeeper
4fe2ade4980c: Pull complete
6fc58a8d4ae4: Pull complete
819f4a45746c: Pull complete
2e207fe88b8d: Pull complete
4b21f042358c: Pull complete
6f9b3f130495: Pull complete
52b60dfb281e: Pull complete
Digest: sha256:3f03c6f5a91e0f638f3d6a755b2d32c06583766031353be87e2d633fa3006c23
Status: Downloaded newer image for zookeeper:latest
可以通过以下命令查看镜像下载情况:
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
zookeeper latest f336949ce7a1 3 weeks ago 148MB
启动容器
启动容器并添加映射:
docker run --privileged=true -d --name zookeeper -p2181:2181 zookeeper:latest
--返回结果
611c89b8f005ce4dab16e5f5ee19e6bccf598f84268d970a57a799babc533b12
- run:创建一个新的容器并运行一个命令;
- privileged:container内的root拥有真正的root权限;
- d:后台运行容器,并返回容器ID;
- name:指定容器名称;
- p:端口映射,格式为:主机(宿主)端口:容器端口;
- zookeeper:latest 使用镜像zookeeper,tag为latest;如果与kafka结合使用可考虑使用wurstmeister/zookeeper镜像。
查询是否启动
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
611c89b8f005 zookeeper:latest "/docker-entrypoint.…" 19 seconds ago Up 18 seconds 2888/tcp, 0.0.0.0:2181->2181/tcp, 3888/tcp zookeeper
以上docker启动成功。可通过以下命令查看日志:
docker logs -f zookeeper
--部分结果
2018-11-15 04:29:29,415 [myid:] - INFO [main:ServerCnxnFactory@117] - Using org.apache.zookeeper.server.NIOServerCnxnFactory as server connection factory
2018-11-15 04:29:29,420 [myid:] - INFO [main:NIOServerCnxnFactory@89] - binding to port 0.0.0.0/0.0.0.0:2181
说明docker容器已经成功启动并绑定到2181端口上。
最终结果服务器之外无法访问