IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> docker宿主机和容器的拷贝、目录挂载 -> 正文阅读

[系统运维]docker宿主机和容器的拷贝、目录挂载

导出镜像的两种方式

基于镜像,导出镜像

# 导出
docker save --output/-o 导出之后的镜像名 要导出的镜像名
# 导入
docker load --input/-i 要导入的镜像名
docker load < 要导入的新镜像名
[root@localhost ~]# docker save -o mynginx.img nginx 
[root@localhost ~]# docker rmi nginx:latest
Untagged: nginx:latest
Untagged: nginx@sha256:644a70516a26004c97d0d85c7fe1d0c3a67ea8ab7ddf4aff193d9f301670cf36
Deleted: sha256:87a94228f133e2da99cb16d653cd1373c5b4e8689956386c1c12b60a20421a02
Deleted: sha256:55b6972054b24c53054322a52748324df5797eefbb6dc374e41522a91d532dd5
Deleted: sha256:6b88aa6f4485486bfc779cccfbe4a7a47a502a7cff2cd70be89c59dcd0db12a8
Deleted: sha256:472c64059965c7b6b1b534ba07374c1d034b17c99acb3cf4534fe78abed41101
Deleted: sha256:788a5cf1e4599312b5923694f53e556ba0e2eb4a6bbb51958e0ec2b510345a49
Deleted: sha256:410f31f9ae37c62af85e8f9575c5f4d75542be1739ac1ca5982cf461be0b13bc
Deleted: sha256:e81bff2725dbc0bf2003db10272fef362e882eb96353055778a66cda430cf81b
[root@localhost ~]# docker load -i mynginx.img
e81bff2725db: Loading layer [==================================================>]  72.52MB/72.52MB
43f4e41372e4: Loading layer [==================================================>]  64.97MB/64.97MB
788e89a4d186: Loading layer [==================================================>]  3.072kB/3.072kB
f8e880dfc4ef: Loading layer [==================================================>]  4.096kB/4.096kB
f7e00b807643: Loading layer [==================================================>]  3.584kB/3.584kB
9959a332cf6e: Loading layer [==================================================>]  7.168kB/7.168kB
Loaded image: nginx:latest
[root@localhost ~]# 

基于容器,导出镜像

# 导入
docker export 容器名 > 导出的镜像名
# 导出
cat 要导入的镜像文件名 | docker import - 导入的新镜像名
[root@localhost ~]# docker run -itd --name mynginx nginx bash
7ba7ef0c17a0e8bf74d92064224c63b4a5382428a089726b97ce84bc58d5b876
[root@localhost ~]# docker export mynginx > mynginx.img
[root@localhost ~]# cat mynginx.img | docker import - mynginx2
sha256:b2c10821e80ade6a5aa8681895fa4f64b3f47d24201b9e77adbef40c33d19fe6

数据拷贝

docker cp 宿主机目录/文件 容器名/容器ID:容器路径
docker cp 容器名/容器ID:容器路径 宿主机目录/文件

目录挂载

指定目录挂载

创建容器添加 -v 参数,格式为 宿主机目录:容器目录

docker run -id -v /mydata/docker_nginx/data:/usr/local/data --name nginx-01 nginx
docker run -id -v /宿主机目录:/容器目录 -v /宿主机目录2:/容器目录2 镜像名

匿名挂载

匿名挂载只需要写容器的目录,容器外对应的目录会在 /var/lib/docker/volumes 中生成

# 匿名挂载
docker run -id --name nginx_01 -v /usr/local/data nginx
# 查看volume数据卷信息
docker volume ls

具名挂载

给数据卷起了个名字,容器外对应的目录会在 /var/lib/docker/volume 中生成

docker run -id --name nginx_02 -v docker_nginx_data:/usr/local/data nginx
[root@localhost ~]# docker run -id --name nginx_02 -v docker_nginx_data:/usr/local/data nginx
ae9face96b78b399d4b6802cf49a2b002a776d9c57ec085826fa4c73e8d14a39
[root@localhost ~]# docker volume ls
DRIVER    VOLUME NAME
local     5d3f84bd732beced170847694a5fb844e3bebb642bc6c714dd55a56fe3abdf0d
local     docker_nginx_data

只读/只写

# 只读。只能通过修改宿主机内容实现对容器的数据管理
docker run -it -v /宿主机目录:/容器目录:ro 镜像名
# 读写,默认。宿主机和容器可以双向数据操作

volumes-from (继承)

# 容器 nginx_04 指定目录挂载
docker run -id --name nginx_04 -v /mydata/docker_nginx/data/:/usr/local/data nginx
# 容器 nginx_05 和 nginx_06 相当于继承 nginx_04 容器的挂载目录
docker run -id --name nginx_05 --volumes-from nginx_04 nginx
docker run -id --name nginx_06 --volumes-from nginx_04 nginx

查看目录挂载关系

通过 docker volume inspect 数据卷名称 可以查看该数据卷对应宿主机的目录地址

[root@localhost ~]# docker volume inspect docker_nginx_data
[
    {
        "CreatedAt": "2021-10-19T14:49:12+08:00",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/var/lib/docker/volumes/docker_nginx_data/_data",
        "Name": "docker_nginx_data",
        "Options": null,
        "Scope": "local"
    }
]

查看容器IP地址

查看容器的元信息

docker inspect 容器名称|容器ID

输出容器的IP地址

docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称|容器ID
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-10-20 12:54:25  更:2021-10-20 12:54:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 19:27:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码