1、编写DockerFile
查看下官方默认的CentOS的情况:
目的:使我们自己的镜像具备如下:登陆后的默认路径、vim编辑器、查看网络配置ifconfig支持
准备编写Dockerflie文件
[root@alway home] mkdir dockerfile-test
[root@alway home] ls
ceshi dockerfile-test docker-test-volume f1
[root@alway home] vim mydockerfile-centos # 编辑文件
[root@alway home] cat mydockerfile-centos
FROM centos
MAINTAINER alway<1826445018@qq.com>
ENV MYPATH /usr/local
WORKDIR $MYPATH
RUN cd /etc/yum.repos.d/
&& sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
&& sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
&& yum makecache
&& yum update -y
&& yum -y install vim
&& yum -y install net-tools
EXPOSE 80
CMD echo $MYPATH
CMD echo "----------end--------"
CMD /bin/bash
2、构建
docker build -f dockerfile地址 -t 新镜像名字:TAG .
会看到 docker build 命令最后有一个 ‘.’ ,‘.’ 表示当前目录,该路径指定在何处找到DOCKER守护进程上构建的“上下文”的文件, 目录中的所有文件都被排序并发送到DOCKER守护进程。
docker build -f mydockerfile-centos -t mycentos:0.1 .
3、运行
docker run -it 新镜像名字:TAG
docker run -it mycentos:0.1
可以看到,我们自己的新镜像已经支持 vim/ifconfig的命令,扩展OK!
4、列出镜像地的变更历史
docker history 镜像名
1、 mkdir -p /root/docker-test/tomcat
2、在上述目录下 touch read.txt
3、将 JDK 和 tomcat 安装的压缩包拷贝进上一步目录
4、在 /root/docker-test/tomcat 目录下新建一个Dockerfile文件
vim Dockerfile
FROM centos
MAINTAINER alway<1826445018@qq.com>
#把宿主机当前上下文的read.txt拷贝到容器/usr/local/路径下
COPY read.txt /usr/local/cincontainer.txt
#把java与tomcat添加到容器中
ADD jdk-11.0.8_linux-x64_bin.tar.gz /usr/local/
ADD apache-tomcat-9.0.64.tar.gz /usr/local/
#安装vim编辑器
RUN cd /etc/yum.repos.d/
&& sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
&& sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
&& yum makecache
&& yum update -y
&& yum -y install vim
&& yum -y install net-tools
#设置工作访问时候的WORKDIR路径,登录落脚点
ENV MYPATH /usr/local
WORKDIR $MYPATH
#配置java与tomcat环境变量
ENV JAVA_HOME /usr/local/jdk-11.0.8
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.64
ENV CATALINA_BASE /usr/local/apache-tomcat-9.0.64
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
#容器运行时监听的端口
EXPOSE 8080
#启动时运行tomcat
#ENTRYPOINT ["/usr/local/apache-tomcat-9.0.64/bin/startup.sh" ]
#CMD ["/usr/local/apache-tomcat-9.0.64/bin/catalina.sh","run"]
CMD /usr/local/apache-tomcat-9.0.64/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.64/bin/logs/catalina.out
5、构建镜像
docker build -t mytomcat:0.1 .
不加-f 指定Dockerfile构建文件时,docker默认使用当前路径下的Dockerfile文件
6、启动运行 run
docker run -d -p 9090:8080 --name mytomcat -v /home/docker-test-volume/tomcat/apps:/usr/local/apache-tomcat-9.0.64/webapps/test -v /home/docker-test-volume/tomcat/logs/:/usr/local/apache-tomcat-9.0.64/logs --privileged=true mytomcat:0.1
7、验证测试访问!
8、发布服务
9、查看日志



