使用docker制作zookeeper鏡像


一.准備基礎環境

1.jdk 

鏈接:https://pan.baidu.com/s/1OZx40UEaH0vv4EW4B8dXfQ 
提取碼:ualu 

2.zookeeper 自行下載

 

3.將這些包都放在/opt/docker 目錄下,這個目錄后續作為Dockerfile的啟動目錄

 

二.安裝docker

1安裝docker

 yum install docker

 

2 更改DOCKER 存儲目錄

 

因為后續還要制作別的鏡像,根目錄容量不夠,需要修改docker的掛載路徑

  解決方法:參考https://blog.csdn.net/justlpf/article/details/103716138

 

根據docker服務的安裝配置文件進行修改

vi /usr/lib/systemd/system/docker.service

在ExectStart=xxx 中添加屬性

ExecStart=xxx --graph /data/lib/docker

 

 

 

 

重新更新一下docker服務

 systemctl disable docker systemctl enable docker systemctl daemon-reload systemctl start docker

 

三.下載基礎鏡像

1.下載centos7.2的基礎鏡像

docker pull docker pull docker.io/centos:centos7.2.1511

2. 查看docker 鏡像

docker images

 

四.制作zookeeper環境包

1.解壓文件

tar -zxvf /opt/zookeeper.tar 

 

2.創建一個啟動zookeeper的腳本

vim start.sh

 

#!/bin/bash
export ZOOKEEPER_HOME=/opt/zookeeper #mkdir -p /opt/zookeeper/data
${ZOOKEEPER_HOME}/bin/zkServer.sh start-foreground

 

3.創建zookeeper data數據目錄

mkdir -p /opt/zookeeper/data

 

4.創建zoo.cfg文件,進入zookeeper 目錄

cp /opt/zookeeper/conf/zoo_sample.cfg /opt/zookeeper/conf/zoo.cfg

 

5.修改配置文件zoo.cfg的內容

tickTime=2000 initLimit=10 syncLimit=5 dataDir=/opt/zookeeper/data clientPort=2181

 

6.將修改后的zookeeper文件重新打成tar包

tar -czvf zookeeper.tar zookeeper

 

將這個包放到/opt/docker目錄下。 到此:zookeeper的基礎包就制作好了

 

五.制作jdk環境包

1.安裝jdk

rpm -ivh jdk-8u74-linux-x64.rpm

默認的jdk安裝路徑為/usr/java/jdk1.8.0_211

 

2.將/usr/java/jdk1.8.0_211 文件復制到 /opt/docker 下並改名為jdk

cp -r /usr/java/jdk1.8.0_211 /opt/docker

mv /opt/docker/jdk1.8.0_211 /opt/docker/jdk

 

3.將jdk打成tar包

tar -czvf jdk.tar /opt/docker/jdk

 

將這個包放到/opt/docker目錄下。到此:jdk的環境包准備好了

 

六.編寫Dockerfile文件

 

 

 

1.創建dockerfile文件

vim /opt/docker/Dockerfile

2.修改內容如下

# FROM命令 定義基礎包 FROM docker.io/centos:centos7.2.1511 # ADD命令 將打包文件上傳到鏡像的根目錄/ ,會自動解壓 ADD zookeeper.tar /opt
ADD jdk.tar /opt # WORKDIR命令 定義工作目錄
WORKDIR /opt # ENV命令 設置環境 ENV JAVA_HOME /opt/jdk1.8.0_211 ENV CLASSPATH .:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ENV PATH $JAVA_HOME/bin:$PATH # RUN命令 執行制作鏡像過程,一個RUN對應一層 #RUN yum clean all \ RUN rm -vf /etc/localtime \ #&& cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime\ #&& rm -rfv /usr/share/backgrounds/* \ #&& rm -rfv /usr/share/doc/* \ #&& rm -rfv /usr/share/man/* \ #&& cd /usr/share/zoneinfo/ && ls |grep -v "Asia"|xargs rm -rfv \ #&& rm -rfv /var/cache/yum/* \ #&& rpm --rebuilddb \ && chmod 755 /opt/zookeeper/start.sh ENTRYPOINT /opt/zookeeper/start.sh

 

七.構建鏡像

1.在/opt/docker目錄下構建鏡像

docker image build -t zookeeper_cool:v1.0 .

2.查看鏡像

 

 

3.啟動容器:映射端口,並且將Docker掛載本地目錄及實現文件共享,這樣重啟容器,zk的數據不會丟失

docker run --rm --name coolsummer -p 2181:2181 -v /opt/docker/zookeeper/data:/opt/zookeeper/data -d zookeeper_cool:v1.0

 

八.驗證zk是否啟動成功

 

zkCli.sh -server 127.0.0.1:2181

 

啟動成功,問題解決

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM