docker—数据卷
启动一个数据容器并挂载本地目录
docker run -itd --name=volume /opt/volume:/tmp/volume --privileged docker.io/nginx-tomcat /bin/bash
[root@a9d5e18d5b2f /]# ll /tmp/
total 4
-rwx------ 1 root root 836 Mar 2 01:07 ks-script-IAlIsB
drwxr-xr-x 2 root root 20 Mar 23 02:55 volume
挂载上面volume 容器里的数据卷
docker run -it --name=volume1 --volumes-from volume --privileged=true docker.io/nginx-tomcat /bin/bash --volumes-from
挂载 volume1 到 新容器里 (把已经挂载的数据卷,再挂载到新容器里)
docker run -it --name=volume2 --volumes-from volume1 --privileged=true nginx.io/nginx-tomcat /bin/bash
利用数据卷容器备份、恢复
(1)备份 docker run --name=backup --volumes-from volume -v $(pwd):/backup --privileged=true tt/centos-test:test tar cvf /backup/backup.tar /tmp/volume
启动一个名字为backup的容器,从volume加载数据卷,并把当前目录挂载为容器的数据卷,对应到容器的/backup目录,然后使用tar命令把容器中的目录/tmp/volume压缩为/backup/backup.tar文件,也就是压缩到了主机的当前目录。
(2)恢复 docker run -dit -v /root/recovery:/tmp/volume --name=recovery --privileged=true tt/centos-test:test /bin/bash
启动一个数据卷容器recovery,并把主机的/root/recovery目录挂载为容器的/tmp/volume目录。 docker run --volumes-from recovery -v $(pwd):/backup --privileged=true tt/centos-test:test tar xvf /backup/backup.tar
启动一个容器并挂载上述的recovery容器的数据卷,并把主机的当前目录(与之前压缩的是同一个目录,因为压缩包在这个目录中)挂载到容器中,然后利用tar命令解压压缩包,因为一进入容器是在/根目录,所以解压的文件会放在/tmp/volume中,也就对应与主机的/root/recovery目录,所以查看主机的/root/recovery可查看到文件,查看容器的/tmp/volume目录也可查看到文件。
容器互联
先启动tomcat
docker run -itd --privileged --name=tomcat docker.io/tomcat8 /usr/sbin/init tomcat默认8080所以这里没有指定外网端口
docker exec -it tomcat bash
systemctl start tomcat
启动nginx时连接tomcat
docker run -itd -p 80:80 --privileged --name nginx-hulian --link tomcat:tomcat docker/nginx /usr/sbin/init 启动
docker exec -it nginx-hulian bash 进入容器
vi /etc/nginx/conf.d/default.conf 修改转发 location / {
root /usr/share/nginx/html;
index index.html index.htm;
proxy_pass http://tomcat:8080/;
} systemctl start nginx.service
进入tomcat容器添加index.html
[root@f474c8bd0bee ROOT]# pwd
/usr/share/tomcat/webapps/ROOT
[root@f474c8bd0bee ROOT]# cat index.html
9999999999
[root@f474c8bd0bee ROOT]#
容器连接访问成功
docker—数据卷的更多相关文章
- docker 数据卷之进阶篇
笔者在<Docker 基础 : 数据管理>一文中介绍了 docker 数据卷(volume) 的基本用法.随着使用的深入,笔者对 docker 数据卷的理解与认识也在不断的增强.本文将在前 ...
- docker 数据卷 ---- 进阶篇
笔者在<Docker 基础 : 数据管理>一文中介绍了 docker 数据卷(volume) 的基本用法.随着使用的深入,笔者对 docker 数据卷的理解与认识也在不断的增强.本文将在前 ...
- 实例解析Docker数据卷+数据卷容器+flocker数据共享+DockerHub操作
Docker内部数据管理和Docker之间的数据共享为数据卷和数据卷容器,实例解析1.将本地的文件作为容器的数据卷,2.数据卷flocker插件实现容器集群(或者Docker Swarm)的数据共享3 ...
- docker数据卷学习-利用数据卷实现mysql的快速恢复和迁移
docker数据卷学习 一 新建带有数据卷的容器 1.从docker hub下载centos7镜像 # docker pull centos 2. 创建container # docker run - ...
- docker数据卷挂载
docker数据卷挂载笔记 我们的服务运行时必不可少的会产生一些日志,或是我们需要把容器内的数据进行备份,甚至多个容器之间进行数据共享,这必然涉及容器的数据管理操作. 容器中管理数据主要有两种方式: ...
- Docker学习第三天(Docker数据卷管理)
1.Docker数据卷管理 在Docker中,要想实现数据的持久化(所谓Docker的数据持久化即数据不随着Container的结束而结束),需要将数据从宿主机挂载到容器中.目前Docker提供了三种 ...
- Docker学习笔记之使用Docker数据卷
Docker数据卷将数据存储到主机而非容器,多个容器需要共享数据时,常常使用数据卷. 1. 为容器设置数据卷(不指定主机目录) 2. 容器与主机之间.容器与容器之间共享数据卷(指定主机目录) 3. 使 ...
- docker数据卷(Data Volumes)
Docker宿主机和容器之间文件拷贝docker copy 前言: Docker 数据管理 在生产环境中使用 Docker ,往往需要对数据进行持久化,或者需要在多个容器之间进行 数据共享,这必然涉及 ...
- 『现学现忘』Docker基础 — 33、Docker数据卷容器的说明与共享数据原理
目录 1.数据卷容器的说明 2.数据卷容器共享数据原理 3.总结 4.练习:MySQL实现数据共享 1.数据卷容器的说明 (1)什么是数据卷容器 一个容器中已经创建好的数据卷,其它容器通过这个容器实现 ...
- docker数据卷技术
数据卷技术 数据卷手动挂载 数据卷容器 part1:数据卷挂载方式 数据卷手动挂载 -v 主机目录:容器目录 #核心参数 #示例 docker run -it --name=centos_test - ...
随机推荐
- 总结 | 慢 SQL 问题经验总结
1. 导致慢 SQL 的原因 在遇到慢 SQL 情况时,不能简单的把原因归结为 SQL 编写问题(虽然这是最常见的因素),实际上导致慢 SQL 有很多因素,甚至包括硬件和 mysql 本身的 bug. ...
- react如何通过shouldComponentUpdate来减少重复渲染
转自:https://segmentfault.com/a/1190000016494335 在react开发中,经常会遇到组件重复渲染的问题,父组件一个state的变化,就会导致以该组件的所有子组件 ...
- 异常-User class threw exception: java.lang.IllegalStateException: Cannot call methods on a stopped SparkContext.
1 详细信息 User class threw exception: java.lang.IllegalStateException: Cannot call methods on a stopped ...
- python、第一篇:初识数据库
一 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件 ...
- paramiko:实现ssh协议,对linux服务器资源的访问
介绍 网络传输是遵循协议的,比如SSH,paramiko则是实现了SSHv2协议的一个python库(底层使用的是cryptography).有了paramiko之后,我们便可以通过python使用s ...
- linux centos 7安装 apache php 及mariadb
1安装Apache, PHP, MySQL以及php库组件. yum -y install httpd php mysql php-mysql 2 安装apache扩展 yum -y install ...
- Hive Serde(四)
Hive Serde 目的: Hive Serde用来做序列化和反序列化,构建在数据存储和执行引擎之间,对两者实现解耦. 应用场景: 1.hive主要用来存储结构化数据,如果结构化数据存储的格 ...
- oracle exp 和 imp 数据和表结构互相独立导出导入
1)只导入数据.不到导入表结构 不可能只导出数据而不导出表结构 这里做了一个变向处理可以在imp时使用ignore=Y选项就可以了,而不报错. 这样就可以实现把数据导入到原来的表里: imp user ...
- 10.Go-goroutine,waitgroup,互斥锁,channel和select
10.1.goroutine goroutine的使用 //Learn_Go/main.go package main import ( "fmt" "time" ...
- python3 百度AI-v3之 人脸对比 & 人脸检测 & 在线活体检测 接口
#!/usr/bin/python3 # 百度人脸对比 & 人脸检测api-v3 import sys, tkinter.messagebox, ast import ssl, json,re ...