Docker之数据卷

时间:2024-04-17 07:26:27

文章目录

    • 一、什么是数据卷
    • 二、自定义镜像

一、什么是数据卷

1.1Docker 数据管理
在生产环境中使用 Docker ,往往需要对数据进行持久化,或者需要在多个容器之间进行
数据共享,这必然涉及容器的数据管理操作
1.2操作
将宿主机的目录与容器的目录进行挂载,实现数据共享
在这里插入图片描述

docker run -di --name c2 -v /home/javaff/data/:/home/javaff/data/ centos:7

在这里插入图片描述
这样就可以在外面查看里面的日志
在这里插入图片描述
容器与容器相互共享

二、自定义镜像

2.1操作
创建文件夹

mkdir mydocker
vi mycentosDockerfile

构建镜像

docker build -f mycentosDockerfile -t javaxl/centos:v1.0 .

在这里插入图片描述
通过镜像运行一个容器进行测试

docker run -it --name mc1 javaxl/centos:v1.0 /bin/bash

在这里插入图片描述
自定义tomact(文件为相对目录)
用vi mytomcatDockerfile进行编辑文件

FROM centos:7
MAINTAINER javaxl "javaxl@qq.com"
 
ENV workerDir /home/javaxl/dockerfile/3
WORKDIR $workerDir
 
ADD jdk-8u151-linux-x64.tar.gz $workerDir
COPY apache-tomcat-8.5.20.tar.gz $workerDir
RUN tar -xvf apache-tomcat-8.5.20.tar.gz apache-tomcat-8.5.20
 
ENV JAVA_HOME $workerDir/jdk1.8.0_151
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV TOMCAT_HOME $workerDir/apache-tomcat-8.5.20
ENV PATH $JAVA_HOME/bin:$TOMCAT_HOME/bin:$TOMCAT_HOME/lib:$PATH
 
EXPOSE 8080
ENTRYPOINT ["/home/javaxl/dockerfile/3/apache-tomcat-8.5.20/bin/catalina.sh","run"]

构造镜像

docker build -f mytomcatDockerfile -t javaxl/tomcat8:v1.0 .

通过代理8080端口号的方式进行访问

docker run -di --name mt1 -P javaxl/tomcat8:v1.0

可以直接通过镜像创建端口

docker run -di --name mt2 -p 8080:8080 javaxl/tomcat8:v1.0