容器中管理数据主要有两种方式:
数据卷(Data Volumes)
数据卷容器(Data Volumes Dontainers)
数据卷
使用-v可以挂载一个本地的目录到容器中作为数据卷。
[root@wls12c /]$ ls /b2b backup prog_update wasStatus.log [root@wls12c /]$ docker run -d --name=tomcat -v /b2b:/test -it centos /bin/bash f85c616bde3317c857b657355561a1cfa4203fab2b8619386435e541089bde23 [root@wls12c /]$ docker exec -it tomcat /bin/bash [root@f85c616bde33 /]# ls /test backup prog_update wasStatus.log [root@f85c616bde33 /]# touch test/demo [root@f85c616bde33 /]# ls /test backup demo prog_update wasStatus.log [root@f85c616bde33 /]# exit exit [root@wls12c /]$ ls /b2b backup demo prog_update wasStatus.log
可以看见容器中已经挂载了/b2b目录了,并有其中数据。
数据卷容器
如果容器之间需要共享一些持续更新的数据,最简单的方式就是是用户数据卷容器,数据卷容器就是一种普通容器,专门提供数据卷供其它容器挂载使用。
创建数据卷容器dbdata
[root@wls12c /]$ docker run -it -v /dbdata:/dbdata --name dbdata centos [root@07e4ad5587e1 /]
创建db1和db2两个容器,并使用--volumes-from挂载dbdata容器中的数据卷
[root@wls12c /]$ docker run -it --volumes-from dbdata --name db1 centos
[root@wls12c /]$ docker run -it --volumes-from dbdata --name db2 centos
这样三个容器任何一个容器在该目录下写入,其它容器都能看见。
备份
备份dbdata数据卷容器中的数据到主机的当前目录。
[root@wls12c /]$ docker run --volumes-from dbdata -v $(pwd):/backup --name worker centos tar zcf /backup/backup.tar.gz /dbdata tar: Removing leading `/' from member names [root@wls12c /]$ ls b2b boot dev lib media net root srv tmp backup.tar.gz cgroup etc lib64 misc opt sbin sys usr bin dbdata home lost+found mnt proc selinux test var [root@wls12c /]$ tar -tvf backup.tar.gz drwxr-xr-x root/root 0 2016-08-26 10:51 dbdata/ -rw-r--r-- root/root 0 2016-08-26 10:40 dbdata/demo -rw-r--r-- root/root 6 2016-08-26 10:48 dbdata/test.txt -rw-r--r-- root/root 0 2016-08-26 10:51 dbdata/hello
恢复
创建一个带有数据卷的容器
[root@wls12c /]$ docker run -v /dbdata/dbdata --name db centos /bin/bash
恢复
http://www.cnblogs.com/zydev/p/5809616.html
相关推荐
由于我们已经在`docker-compose.yml`文件中设置了数据卷挂载,因此可以直接在宿主机的`./webapps.dist`目录下放置Tomcat所需的Web应用文件。这些文件会被自动同步到容器内的`/usr/local/tomcat/webapps.dist`目录。 ...
而Docker Compose则是Docker的一个工具,用于定义和运行多容器的Docker应用程序。 标题中的"docker-compose-linux-aarch64"表明这是一个针对Linux系统,特别是基于AArch64(也称为ARM64)架构的Docker Compose版本...
Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。它允许通过YAML文件来配置服务,并通过单一命令管理整个应用的生命周期,如构建、启动、停止和扩展容器。 【描述】提到的“docker-compose 手动...
1. **服务定义**:在`docker-compose.yml`文件中,你可以定义一系列的服务,每个服务都包含了容器镜像、端口映射、环境变量、数据卷等信息。 2. **网络管理**:Compose可以自动创建和管理网络,让服务之间能够相互...
包含了docker-compose快速部署spiderflow的所有相关文件,包含docker-compose.yml,mysql, spiderflow.jar 可直接运行docker-compose up -d 启动容器。 数据库相关配置都可以通过docker-compose.yml修改。
YAML文件(通常命名为`docker-compose.yml`)是Docker Compose的基础,它定义了服务、网络和卷的配置。服务定义包括镜像、端口映射、环境变量、构建过程等。例如: ```yaml version: '3' services: web: image: ...
此外,理解Docker的存储卷概念也很关键,因为`docker-compose.yml`可能会定义将本地目录挂载到容器内部,这样就可以持久化Apollo的数据,防止容器重启时数据丢失。 总结来说,这个压缩包提供的知识涵盖了以下几个...
特征 :locked_with_key: 安全:以普通用户身份而非root用户身份运行 :fire: 安全:容器是只读的,只能访问其数据目录,并且没有多余的特权 :sparkles: 包括电池:包括git用于和Pytz用于适当的时区转换 :building_...
Docker Compose是一个定义和运行多容器Docker应用的工具。通过YAML文件来配置你的应用服务,然后使用`docker-compose`命令来创建和管理这些服务。离线安装Docker Compose,你需要下载对应版本的`docker-compose`二...
例如,我们可以使用 Docker 的卷功能将应用程序的配置文件和数据目录映射到容器外部。 五、迁移与备份 迁移与备份是 Docker 容器的重要功能。我们可以使用 Docker 的容器保存为镜像功能来实现容器的迁移和备份。 ...
5. **Docker和docker-compose**:Docker是一种容器化技术,允许将应用程序及其依赖项打包到一个可移植的容器中,确保一致的运行环境。docker-compose则是一个工具,用于定义和运行多容器Docker应用。通过编写`docker...
Docker Compose是Docker的一个工具,用于定义和运行多容器Docker应用。通过一个YAML文件(`docker-compose.yml`),我们可以定义整个服务网络,包括Elasticsearch、Logstash和Kibana,实现一键启动。 **实施步骤:...
通过一个 YAML 文件(通常命名为 `docker-compose.yml`),可以配置服务、网络和卷,然后通过 `docker-compose up` 命令启动整个应用堆栈。这简化了在本地或生产环境中设置复杂服务的流程。 3. ClickHouse:...
首先,Docker Compose是一个强大的工具,可以让我们通过YAML文件定义和运行多容器的Docker应用。在这个场景下,我们可以用Docker Compose来管理多个Redis实例,包括主节点、从节点和哨兵节点,以实现高可用性。 1. ...
`docker-compose.yml`文件是Docker Compose的配置文件,用于定义和运行多容器的Docker应用。在这个文件中,我们可以声明服务、网络和卷,以创建一个完整的应用生态系统。 在我们的例子中,"mysql+tomcat8 docker-...
此外,保持 RocketMQ 的数据持久化也很重要,可以使用 Docker 数据卷或者绑定宿主机目录来保存消息数据。 总的来说,通过 Docker Compose 安装 RocketMQ 提供了一种简洁、可重复的方式,使得部署和管理 RocketMQ ...
Prometheus是时序数据库和监控系统,而Docker Compose则是一个定义和运行多容器Docker应用的工具,它通过YAML文件来配置服务,简化了容器的部署和管理。 在压缩包中的文件如下: 1. **docker-compose.yaml**:这是...
每个服务都有自己的配置,如端口映射、环境变量和数据卷。 3. **配置Logstash**:`logstash.conf`文件是Logstash的配置,用于定义输入、过滤器和输出插件。例如,你可以配置一个文件输入插件来读取系统日志,并使用...
本文将详细介绍 Docker 容器技术中的数据卷和数据持久化概述、容器数据存放问题、数据卷的概念、容器中数据管理方式、容器数据卷的特征和数据卷最佳使用场景等内容。 一、容器数据存放问题 在 Docker 容器技术中,...
3. 数据持久化是必要的,可以使用Docker卷或云存储服务来保存MySQL的数据,防止重启或更新容器导致数据丢失。 4. 定期备份数据库,以防万一需要恢复到特定版本的配置。 5. 监控与日志记录同样重要,可以集成...