docker 数据存储(thirty-five day)

1、打包
bash 复制代码
[root@docker1 ~]# docker save -o centos.tar centos:latest
[root@docker1 ~]# systemctl  start  docker
[root@docker1 ~]# docker ps -all
CONTAINER ID   IMAGE           COMMAND       CREATED        STATUS                     PORTS     NAMES
e84261634543   centos:latest   "/bin/bash"   20 hours ago   Exited (0) 2 minutes ago             c0
[root@docker1 ~]# docker rm c0
c0
[root@docker1 ~]# docker load -i centos.tar
[root@docker1 ~]# docker run -it --name c0 centos:latest  /bin/bash

[root@docker1 ~]# docker start c0
c0
[root@docker1 ~]# docker attach c0
[root@c8d84a3be144 /]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

[root@c8d84a3be144 /]# yum clean all &&  yum makecache
[root@c8d84a3be144 /]# yum -y install epel-release

[root@c8d84a3be144 /]# read escape sequence
[root@docker1 ~]# docker ps -all
CONTAINER ID   IMAGE           COMMAND       CREATED          STATUS         PORTS     NAMES
c8d84a3be144   centos:latest   "/bin/bash"   30 minutes ago   Up 8 minutes             c0
2、从容器导出tar包
bash 复制代码
[root@docker1 ~]# docker export -o centos_yum.tar c0  #容器包
[root@docker1 ~]# ls   #查看新生成的tar包
anaconda-ks.cfg  centos.tar#镜像包  centos_yum.tar
3、从tar包导入镜像
bash 复制代码
docker import -m 说明内容 centos_yum.tar centos:yum

[root@docker1 ~]# docker import -m yum centos_yum.tar centos:yum  #生成镜像
4、查看镜像 新的镜像不需要配置yum
bash 复制代码
[root@docker ~]# docker run -it --name c1 centos:httpd /bin/bash
5、练习 创建一个镜像,包含httpd服务,名称centos版本httpd
bash 复制代码
[root@ac4bae6c2a0d /]# rm -rf /etc/yum.repos.d/*
[root@ac4bae6c2a0d /]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

[root@ac4bae6c2a0d /]# yum clean all && yum makecache
[root@ac4bae6c2a0d /]# yum -y install httpd

[root@ac4bae6c2a0d /]# echo "docker_httpd_server" > /var/www/html/index.html
[root@ac4bae6c2a0d /]# http -k start
[root@ac4bae6c2a0d /]# http -k start

[root@ac4bae6c2a0d /]# curl localhost
docker_httpd_server

[root@docker ~]# docker export -o centos_yum.tar c0
[root@docker ~]# docker import -m yum centos_yum.tar centos:httpd

[root@docker ~]# docker run -it --name c1 centos:httpd /bin/bash
[root@c75fd2f052ea /]# httpd -k start 
[root@c75fd2f052ea /]# curl localhost
docker_httpd_server

root@docker \~# docker inspect c1

6、在外部调用指令

root@docker \~# docker exec c0 ip a

root@docker \~# docker exec c0 ifconfig

7、外部创建文件

root@docker \~# docker exec c1 touch /opt/test.txt

root@docker \~# docker exec c1 ls /opt/

test.txt

二、总结
1.镜像的迁移
bash 复制代码
1.打包

docker save -o centos.tar centos: latest

2.加载

docker load -i centos.tar
docker images

#停用关闭容器
docker stop c0 c1;docker rm c0 c1
# 删除镜像

docker rmi centos:latest
2.创建镜像
bash 复制代码
1.创建容器

docker run -it -- name c0 centos:latest /bin/bash

# 下载阿里云仓库
# clean, ,,makecache
ctrl p q

2.容器打包

docker export -o centos_yum. tar c0

3.引入镜像

docker import -m "update yum repo" centos_yum. tar
centos : yum

docker image ls
3.ip网络
bash 复制代码
1.交互式

docker start c0

docker attach c0
yum -y install iproute
ip a

2.inspect

docker inspect c0

3.exec

docker exec c0 yum -y install net-tools
docker exec c0 ifconfig
4.端口映射
bash 复制代码
1.指定端口映射

docker run -it -- name c0 -p70:80 centos:httpd
/bin/bash

2.随机端口映射

docker run -it -- name c1 -p80 centos:httpd
/bin/bash

3.指定其他ip的端口映射

ifconfig ens33:0 192.168.71.51 broadcast
192.168.71.51 netmask 255.255.255.255 up

docker run -it -- name c2 -p192.168.71.51 :: 80
centos:httpd /bin/bash
5.持久化

1.挂载

bash 复制代码
docker run -it -- name c3 -v /abc:/def centos:httpd
/bin/bash

touch /abc/aaa. txt

docker exec c3 ls /def
相关推荐
竣达技术2 分钟前
Modbus 转 SNMP 协议转换器|自定义协议 + SNMP TRAP 主动上报
运维·服务器·网络·数据库·安全
优化Henry12 分钟前
LTE小区光路降质告警排查与处理实录
运维·网络·学习·5g·tdd
无足鸟ICT27 分钟前
【RHCA+】_etc_yum.conf
linux·运维
李纲明28 分钟前
WordPress 古腾堡点「更新」报「不是有效的 JSON 响应」:我按 REST 接口一路查下来的顺序
运维·nginx·php·wordpress·rest api
行思理32 分钟前
个推厂商应用开通指南
运维·服务器·uni-app·个推·uni-app push
龙亘川38 分钟前
电子印章系统对接管理业务建模:从需求申请、接口开发到监控运维的全流程闭环
大数据·运维·人工智能·智慧城市·开源软件
许知珩40 分钟前
Kubernetes 存储与配置管理 ——Volume、ConfigMap 与 Secret 实战详解
云原生·容器·kubernetes
研发小能1 小时前
DevOps 国产替代选型指南:从“单点替换“到“一体化平台“
运维·研发效能·devops·嘉为蓝鲸
l1t1 小时前
DeepSeek总结的本地优先的分析不需要数据库服务器
运维·服务器·数据库·人工智能·duckdb
你看我名字2 小时前
LNMP 生产架构与云运维实践:Nginx、PHP-FPM、MySQL 全链路分析
运维·nginx·架构