docker volume持久化存储与数据分享
2024-08-31 19:45:30
第一种
指定volume文件mysql存储,存储的位置为/var/lib/mysql
-v mysql:/var/lib/mysql
第二种
同步文件,将容器中的skeleton文件夹的内容同步到宿主机的skeleton文件夹
-v /soymilk/docker/skeleton:/skeleton (-v $(pwd):/skeleton)
实例一
docker run -d --name mysql1 -v mysql:/var/lib/mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql 创建容器mysql1
(-e MYSQL_ALLOW_EMPTY_PASSWORD=true是为了不用创建root密码使用mysql) docker ps 看下我们的容器 docker volume ls 看下我们volume docker exec -it mysql1 /bin/bash 进入容器 mysql -u root show databases; create database docker1; exit exit 退出容器 docker rm -f mysql1 强制删除我们运行中的容器 docker run -d --name mysql2 -v mysql:/var/lib/mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql 创建容器mysql2,并且使用以前的volume docker exec -it mysql2 /bin/bash 进入容器 mysql -u root show databases; 有我们在容器mysql1里边创建的docker1
实例二
创建Dockerfile的文件夹,新建里边的两个文件Dockerfile、index.html
mkdir nginx
Dockerfile
FROM nginx:latest
WORKDIR /usr/share/nginx/html
COPY index.html index.html
index.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8"> <title>hello</title> </head> <body>
<h1>Hello Docker! </h1>
</body>
</html>
build我们的image
docker build -t soymilk/nginx .
创建容器
docker run -d --name web -p : -v $(pwd):/usr/share/nginx/html soymilk/nginx
浏览器访问宿主机ip
修改宿主机的index.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8"> <title>hello</title> </head> <body>
<h1>Hello! </h1>
</body>
</html>
浏览器访问再次访问宿主机ip发现改变了
最新文章
- ASM, AAM
- Java transient关键字使用小记
- Win10家庭版升级专业版密钥
- bzoj 1537: [POI2005]Aut- The Bus 线段树
- JQUERY 保存成功后又下角动态提示
- 发布我的图片预加载控件YPreLoadImg v1.0
- Android 编程下 Touch 事件的分发和消费机制
- 添加事件(jquery)
- 集成代码编辑器ACE的经验
- ios中怎么样点击背景退出键盘
- java并发编程:如何创建线程
- bzoj3620 似乎在梦中见过的样子
- Table of Contents - Servlet &; JSP
- osx mitmproxy ssl 错误
- handler.go
- ASP Action函数 如何接收client传递的数据(编辑中。。。)
- Linux 内存泄漏检查工具 valgrind
- django中云存储静态文件
- FreeMarker has_content等价于StringUtils.isNotNullOrEmpty
- 【CF587F】Duff is Mad AC自动机+分块