Docker之数据卷

文章目录

一、什么是数据卷

1.1Docker 数据管理

在生产环境中使用 Docker ,往往需要对数据进行持久化,或者需要在多个容器之间进行

数据共享,这必然涉及容器的数据管理操作

1.2操作

将宿主机的目录与容器的目录进行挂载,实现数据共享

bash 复制代码
docker run -di --name c2 -v /home/javaff/data/:/home/javaff/data/ centos:7

这样就可以在外面查看里面的日志

容器与容器相互共享

二、自定义镜像

2.1操作

创建文件夹

bash 复制代码
mkdir mydocker
vi mycentosDockerfile

构建镜像

bash 复制代码
docker build -f mycentosDockerfile -t javaxl/centos:v1.0 .

通过镜像运行一个容器进行测试

bash 复制代码
docker run -it --name mc1 javaxl/centos:v1.0 /bin/bash

自定义tomact(文件为相对目录)

用vi mytomcatDockerfile进行编辑文件

bash 复制代码
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"]

构造镜像

bash 复制代码
docker build -f mytomcatDockerfile -t javaxl/tomcat8:v1.0 .

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

bash 复制代码
docker run -di --name mt1 -P javaxl/tomcat8:v1.0

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

bash 复制代码
docker run -di --name mt2 -p 8080:8080 javaxl/tomcat8:v1.0
相关推荐
行思理几秒前
docker新手教程
运维·docker·容器
TG_yunshuguoji1 小时前
亚马逊云渠道商:本地SSD缓存如何保障数据安全?
运维·服务器·安全·云计算·aws
mi20061 小时前
银河麒麟v10 sp1更改data目录挂载
linux·运维
着迷不白2 小时前
华为堡垒机
linux·运维·服务器·centos
妮妮喔妮3 小时前
linux:查看某个文件下开启的进程占用的是哪个端口?
linux·运维·服务器
FJW0208143 小时前
【Linux】输入输出管理
linux·运维·服务器
莫陌尛.4 小时前
docker安装中间件
docker·中间件·容器
遇见火星4 小时前
Aiops探索:基于Ansible的Dify版本运维智能体落地思路
运维·服务器·ansible
TG_yunshuguoji5 小时前
亚马逊云渠道商:如何通过配置自动替换构建故障自愈的云架构?
运维·服务器·架构·云计算·aws
tuokuac5 小时前
虚拟机挂起,重启后主机连接不上虚拟机docker中的mysql?(docker网络状态假死)
网络·mysql·docker