docker学了一直没怎么用,在学习mycat的时候顺便跟着教程做个镜像,记录如下:
一、下载jre和mycat的包。
1、jre,这个去官网下载就好。
下面贴一个jre1.8的下载地址:
https://www.java.com/zh_CN/download/linux_manual.jsp
2、下载mycat的版本,我下载是
我下载的是1.6.7.5的release版本
二、制作dockerfile文件
编写的docker file文件如下:
From ubuntu:20.04
MAINTAINER idve<idve2009@126.com>LABEL name="Mycat Untuntu 20.04 Image" \
build-date="20200801"
#添加java的环境
RUN mkdir /usr/local/java
ADD jre-8u261-linux-x64.tar.gz /usr/local/java
RUn ln -s /usr/local/java/jre1.8.0_261 /usr/local/java/jre
ENV JRE_HOME /usr/local/java/jre
ENV JAVA_HOME /usr/local/java/jre
ENV CLASSPATH ${JRE_HOME}/lib
ENV PATH $PATH:${JRE_HOME}/bin
ADD Mycat-server-1.6.7.5-release-20200410174409-linux.tar.gz /var/www/
#指定的工作路径
ENV WORKPATH /home/
WORKDIR $WORKPATH#容器打开端口
EXPOSE 8066
CMD /var/www/mycat/bin/mycat console
这个镜像是基于最新的ubuntu 20.0.4制作的。
三、构建镜像
sudo docker build -f mycat_dockerfile -t idva/mycat:1.0 .
-t 是打tag
四、运行镜像
sudo docker run -p 8066:8066 -it [镜像id]
五、其他
1、挂在配置
将镜像里的配置挂在到宿机器上,这样修改配置不用进镜像里去修改了。
在宿主机上etc下建立文件夹,启动容器后,将mycat的conf拷贝过来
sudo mkdir mycat
sudo docker cp 0dc55c569fc8:/var/www/mycat/conf/ /etc/mycat/
将日志也拷贝到宿主机上。
cd /var/log
sudo mkdir mycat
sudo docker cp 0dc55c569fc8:/var/www/mycat/logs/ /var/log/mycat/
六、重新挂载启动
sudo docker run -p 8066:8066 -it -v /var/www/mycat/conf/:/etc/mycat/conf/ -v /var/www/mycat/logs/:/var/log/mycat/logs/ ee792ecfa5c9
成功!