Docker:数据卷(Data Volumes)dockerfile

news2024/11/23 20:37:24

目录

一、宿主机与容器之间的文件拷贝

从容器中拷贝文件到宿主机

 从宿主机拷贝文件到容器

二、数据卷

三、数据卷容器

四、Dockerfile

1、自定义centos,具备vim及ifconfig作用

 2、自定义tomcat8

一、宿主机与容器之间的文件拷贝

备份我们已经装好的docker

 等备份完之后我们再打开工具

打开MySQL测试连接3306 可见有一个这样的数据库

 

 再安装一个MySQL

利用MySQL镜像安装MySQL服务

docker run -p 3307:3306 --name mysql1   -di -v /home/javaxl/data/mysql/mysql.conf.d/:/etc/mysql/mysql.conf.d/ -v /home/javaxl/data/mysql/data/:/var/lib/mysql -v /home/javaxl/data/mysql/log/:/var/log -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

 

 注意:同时访问两个容器里面的端口号会存在问题,若想访问第二个容器中的,要先停止第一个容器

从容器中拷贝文件到宿主机

docker cp tomcat1:/usr/local/tomcat/webapps/hello /javaxc/software/apache-tomcat-8.5.20/webapps

 从宿主机拷贝文件到容器

docker cp /javaxc/software/apache-tomcat-8.5.20/webapps tomcat1:/usr/local/tomcat/

二、数据卷

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

结论:不管宿主机、容器在指定目录创建文件夹还是文件,都会会被共享;

三、数据卷容器

docker run -di -v /home/javaxc/data/c4 --name c4 centos:7
docker run -di --volumes-from c4 --name c6 centos:7

其中c4为数据卷容器,c6为普通容器,其中c4就起到一个桥接作用,我们可以通过docker inspect查看容器的详细情况

docker inspect c4
docker inspect c6

会发现c4、c6目录挂载情况是一样的
结论:不管c4、c6在指定目录创建文件夹还是文件,都会会被共享;

四、Dockerfile

1、自定义centos,具备vim及ifconfig作用

cd /javaxc/software
mkdir mydocker
vi mycentosDockerfile

向 mycentosDockerfile 编辑内容

FROM centos:7
MAINTAINER cdl“cdl@qq.com”
RUN yum -y install vim
RUN yum install net-tools.x86_64 -y
CMD /bin/bash

 构建镜像

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

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

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

 2、自定义tomcat8

cd /javaxc/software
mkdir mydocker
vi mytomcatDockerfile

 向 mytomcatDockerfile 编辑内容

FROM centos:7
MAINTAINER javaxc "javaxc@qq.com"

ENV workerDir /home/javaxc/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/javaxc/dockerfile/3/apache-tomcat-8.5.20/bin/catalina.sh","run"]

构建镜像

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

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

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

 浏览器输入

http://192.168.26.128:49153/
http://192.168.26.128:49154/

 都可以访问到tomcat

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/66669.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

隔离式DC/DC高压模块5V12V24V转50V110V250V300V380V600V1100V短路保护直流升压可调开关控制电源模块

特点 ● 效率高达 70%以上 ● 1*2英寸标准封装 ● 单电压输出 ● 价格低 ● 稳压输出 ● 工作温度: -40℃~85℃ ● 阻燃封装,满足UL94-V0 要求 ● 温度特性好 ● 可直接焊在PCB 上 应用 HRB W2~25W 系列模块电源是一种DC-DC升压变换器。该模块电源的输入电压分为&a…

Android databinding之数据单向与双向绑定详解与使用(三)

一、介绍 通过前面两篇文档,我们大概了解了databinding的工作方式,view的初始化,recycleview的使用。但是这些UI都离不开数据的填充,数据的修饰。 在说到数据绑定,好多开发者平时在工作中也经常听到databinding的数据…

https服务部署指南

1.概念 https服务的证书分布如下图: 客户端:CA证书 服务器:服务器证书,服务器密钥 2.证书生成&验证 2.1 证书生成 假设我们的域名为: www.contoso.com 创建CA私钥 openssl ecparam -out contoso.key -name p…

JMH基准测试工具 (一):介绍

在日常开发中,我们对一些代码的调用或者工具的使用会存在多种选择方式,在不确定他们性能的时候,我们首先想要做的就是去测量它。大多数时候,我们会简单的采用多次计数的方式来测量,来看这个方法的总耗时。 但是&#x…

串口通信扩展知识

在Android工控系统上,Android与硬件的通讯交互随处可见,其中串口通讯是最常用的通讯方式之一。 串口通信(Serial Communication), 是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式…

扩散模型(Diffusion Model)原理与代码解析(一)

一、模型概览 扩散模型的灵感来自于非平衡热力学。定义了一个扩散步骤的马尔可夫链(当前状态只与上一时刻的状态有关),慢慢地向真实数据中添加随机噪声(前向过程),然后学习反向扩散过程(逆扩散…

python 图形界面“诈金花”游戏,更新了!附完整代码

旧版本的代码请见上一篇博文: python 从一道作业题到制作一个图形界面的“诈金花”游戏_Hann Yang的博客-CSDN博客Player1: (♥Q, ♣2, ♣8) - 单张Player2: (♦10, ♥7, ♠6) - 单张Player3: (♣4, ♠4, ♦2) - 对子Player4: (♠5, ♠9, ♥6) - 单张Player5: (♠…

SSM框架-SpringMVC(二)

目录 1 SpringMVC处理Ajax请求 1.1 RequestBody 1.2 RequestBody获取json格式的请求参数 1.3 ResponseBody 1.4、ResponseBody响应浏览器json数据 1.5 RestController注解 2 文件上传和下载 2.1 文件下载 2.2 上传文件 3 拦截器 3.1 拦截器的三个抽象方法 3.2 拦截器…

技术分享 | ClickHouse 冷热存储分离方案线上实践

作者:任坤 现居珠海,先后担任专职 Oracle 和 MySQL DBA,现在主要负责 MySQL、mongoDB 和 Redis 维护工作。 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源…

母胎级教学,工业路由器远程维护PLC详细操作指南

1、前言随着工业4.0大力推进,对工业现场设备的稳定性提出了更高的要求,大多数的设备制造商不能持续监测及管理设备,因为现场设备分布比较分散,客户不能集中管理,如果通过视频或电话沟通问题,则准确度不够&a…

【安卓学习之常见问题】jar文件中Class转java文件不准(不同软件打开的class文件不一样)

█ jar文件中Class转java文件不准 █ 系列文章目录 提示:这里是收集了和文件分享有关的文章 【安卓学习之常见问题】android路径及文件问题 【安卓学习之常见问题】文件分享–文件不存在 【安卓学习之常见问题】自定义组件-刷新后跳到第一行 【安卓学习之常见问题…

K_A08_005 基于 STM32等单片机驱动XY-160D模块按键控制直流电机正反转加减速启停

目录 一、资源说明 二、基本参数 四、部分代码说明 接线说明 1、STC89C52RCXY-160D模块 2、STM32F103C8T6XY-160D模块 五、基础知识学习与相关资料下载 六、视频效果展示与程序资料获取 七、项目所有材料清单 八、注意事项 九、接线表格 一、资源说明 单片机型号 测试…

【UNIAPP】APP快速免费生成一键发布页面

参考官方文档:https://uniapp.dcloud.net.cn/uniCloud/hosting.html# 效果预览地址:https://hellouniapp.dcloud.net.cn/portal 一、创建并运行uni-admin 1、创建项目 2、运行项目 3、关联到浏览器打开。 二、登录后台界面 1、进入主页面 2、如…

[附源码]Python计算机毕业设计Django校园帮平台管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

【2023-Pytorch-分类教程】手把手教你使用Pytorch训练自己的分类模型

之前更新过一起tf版本的训练自己的物体分类模型,但是很多兄弟反应tf版本的代码在GPU上无法运行,这个原因是tf在30系显卡上没有很好的支持。所以我们重新更新一期Pytorch版本的物体分类模型训练教程,在这个教程里面,你将会学会物体…

[附源码]计算机毕业设计面向高校活动聚AppSpringboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【电商项目实战】新增收货地址(详细篇)

🍁博客主页:👉不会压弯的小飞侠 ✨欢迎关注:👉点赞👍收藏⭐留言✒ ✨系列专栏:👉SpringBoot电商项目实战 ✨学习社区: 👉不会压弯的小飞侠 ✨知足上进&#x…

刷爆力扣之最短无序连续子数组

刷爆力扣之最短无序连续子数组 HELLO,各位看官大大好,我是阿呆 🙈🙈🙈 今天阿呆继续记录下力扣刷题过程,收录在专栏算法中 😜😜😜 该专栏按照不同类别标签进行刷题&…

Windows+Visual stdio+CUDA编程方式及测试

目录一、visual stdio内针对工程的配置1、新建一个空项目2、配置CUDA生成依赖项3、配置基本库目录4、配置静态链接库路径5、配置源码文件风格6、扩展文件名配置二、样例测试测试样例1样例1问题:找不到helper_cuda.h文件测试样例2测试样例3一、visual stdio内针对工程…

Java餐厅点餐系统uniapp源码带安装教程

一套Java开发的餐厅点餐半成品系统,前端使用uniapp编写,经过本地测试,这套系统还有一些功能没完善好,有能力的朋友可以在这套系统基础上进行二次开发。 技术架构 后端技术框架:springboot shiro layui 前端技术框架…