容器数据卷网络基本配置
容器和主机、容器与容器之间需要数据共享时可以使用数据卷技术解决
容器中管理数据的主要方式有两种:数据卷、数据卷容器
1 数据卷
1.1 数据卷特性
- 可在容器之间共享和重用
- 对数据卷的修改马上生效
- 对数据卷的更新不影响镜像
- 卷会一直存在,直到没有容器使用
1.2 在容器内创建一个数据卷的方式,在启动的时候使用 -v 标记,可以创建一个数据卷挂载到容器指定目录中,也可以挂载本地目录到容器中作为数据卷。
说明:本地目录路径必须是绝对路径,如果不存在,docker会自动创建。
例如:使用mysql 容器时可以指定主机数据目录挂载到容器内部。默认情况下,mysql 容器的数据库文件和日志文件都会存在容器的 AUFS 文件层,不便于数据迁移、备份。而且容器也会变得越来越臃肿。
可以创建一个目录文件夹存放mysql数据文件
mkdir -p /home/ubuntu/work/data/database/mysql20180128
运行容器
docker run --name some-mysql -p 3306:3306 -v /home/ubuntu/work/data/database/mysql20180128:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
1.3 数据卷容器,可以在容器之间共享一些持续更新的数据。
--name 可以指定容器名称
2 容器网络基础配置,再启动容器时,如果不指定参数,在容器外部是无法通过网络来访问容器内部服务的。可以通过 -P 或 -p 指定端口映射。
-P docker 会随机映射一个 49000-49900的端口到容器内部开放的网络端口
-p 可以指定要映射的端口,支持的格式 ip:hostPort:containerPort | ip::containerPort | hostPort:containerPort
--link 可以在容器之间创建安全隧道,用法 --link name:alias , 其中 name 是要连接的容器名称, alias 是这个链接的别名。
如果觉得有用,想赞助一下请移步赞助页面:赞助一下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)