docker应用

打包传输

1.将镜像打包

#查看帮助文件

docker --help 

#找到save,可以将镜像保存为一个tar包

docker save --help

#查看save使用方式

#查看现有的镜像

docker images

# docker save --output centos.tar centos:latest

ls

...centos.tar...

可以将tar发送给其他用户,也可以作为备份

删除镜像

[root@docker ~]# docker rmi centos:latest
Error response from daemon: conflict: unable to remove repository reference "centos:latest" (must force) - container 5b068251f855 is using its referenced image 5d0da3dc9764
#如果有这个镜像生成的容器正在使用,那么就无法使用rmi移除镜像

#删除容器,退出容器的up状态

docker rm c0

[root@docker ~]# docker rm c0
c0

[root@docker ~]# docker ps --all        #使用docker ps --all确定没有镜像
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@docker ~]# docker rmi centos:latest
Untagged: centos:latest
Untagged: centos@sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177
Deleted: sha256:5d0da3dc976460b72c77d94c8a1ad043720b0416bfc16c52c45d4847e53fadb6
Deleted: sha256:74ddd0ec08fa43d09f32636ba91a0a3053b02cb4627c35051aff89f853606b59
[root@docker ~]# docker images
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE

从tar中引入镜像

docker --help

docker load --help

docker load  -i centos.tar centos:latest

[root@docker ~]# docker images
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE
[root@docker ~]# ls
anaconda-ks.cfg  centos.tar
[root@docker ~]# docker load --help 

Usage:  docker load [OPTIONS]

Load an image from a tar archive or STDIN

Aliases:
  docker image load, docker load

Options:
  -i, --input string   Read from tar archive file, instead of STDIN
  -q, --quiet          Suppress the load output
[root@docker ~]# docker load -i centos.tar 
74ddd0ec08fa: Loading layer  238.6MB/238.6MB
Loaded image: centos:latest
[root@docker ~]# docker images 
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   2 years ago   231MB
 

打开一个新的容器

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

ctrl ^p^q        退出但不关闭

创建镜像

#查看所有的容器

docker ps --all

#停用并且删除容器

docker stop c1 && docker rm c1

容器导出镜像

1.从容器导出tar包

#查看帮助文档

docker --help 

docker export --help

#使用指令

docker export -o centos_yum.tar c0        将容器导出为tar包

#查看新生成的tar包

2.从tar包导入镜像

#查看帮助

docker --help

docker import --help

#使用导入

docker import -m 说明内容 centos_yum.tar centos:yum

#查看镜像

docker images 

#这个镜像不需要我们配置yum

练习:

做一个带httpd服务的镜像

docker run -it --name c100 centos:yum /bin/bash

yum -y install httpd 

echo "aaabbbccc"  > /var/www/html/index.html

httpd -k start 

curl ^P^Q

docker export -o centos_httpd.tar c100

docker import -m httpd centos_httpd.tar centos:httpd

实操:

[root@docker httpd]# docker run -it --name c100 centos:yum /bin/bash
[root@f223078b317b /]# yum -y install httpd
[root@f223078b317b /]# echo "aaabbbcccddd" > /var/www/html/index.html
[root@f223078b317b /]# httpd -k start 
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
[root@f223078b317b /]# curl localhost
aaabbbcccddd
[root@f223078b317b /]# [root@docker httpd]# 
[root@docker httpd]# docker ps 
CONTAINER ID   IMAGE        COMMAND       CREATED         STATUS         PORTS     NAMES
f223078b317b   centos:yum   "/bin/bash"   2 minutes ago   Up 2 minutes             c100
[root@docker httpd]# docker export -o centos_httpd c100
[root@docker httpd]# ls
centos_httpd  dockerfile  index.html
[root@docker httpd]# docker import -m intrduce centos_httpd centos:httpd
sha256:4bec8f3517a5f9c7934e9b9c61db1b7eec106b5ab4375b905d8dcfbf93707a86
[root@docker httpd]# docker image ls
REPOSITORY   TAG       IMAGE ID       CREATED          SIZE
centos       httpd     4bec8f3517a5   21 seconds ago   309MB
centos       yum       3e62c6e9639e   3 hours ago      260MB
centos       7         eeb6ee3f44bd   2 years ago      204MB
centos       latest    5d0da3dc9764   2 years ago      231MB
[root@docker httpd]# docker run -it --name c101 centos:httpd /bin/bash        启动一个容器之后,可以启动httpd服务
[root@17f686ad3194 /]# httpd -k start 
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.3. Set the 'ServerName' directive globally to suppress this message
[root@17f686ad3194 /]# curl localhost
aaabbbcccddd

[root@docker ~]# docker inspect --help        查看语法

查看ip

1.进入到容器,使用指令

docker attach c100

yum -y install net-tools/iproute

ip a s

ifconfig

2.使用docker指令

docker inspect c100

docker inspect c101

3.在外部调用指令

docker exec c100 ip a s

docker exec c101 ifconfig

4.练习测试实验exec创建(touch)一个文件

[root@docker ~]# docker exec c100 touch /opt/test.txt
[root@docker ~]# docker exec c100 ls /opt/
test.txt
 

启动容器并端口映射

1.将容器中的80端口映射到宿主机(docker主机)80端口

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

2.随机的为容器指定映射端口,映射端口>=32768

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

curl p q

docker  ps 

3.通过其他的ip地址的端口映射容器的端口

docker run -it --name c0  -p192.168.2.80 centos:httpd /bin/bash

访问192.168.2.80:32768

数据存储

1.为什么

因为docker 容器只是一个工具,不需要保存数据,不需要做持久化,如果要做持久化,那么就需要保存到宿主机上,需要宿主机和容器有一个共享卷

docker run -it --name c0 -v  /source:/data

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/51221.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

class_4:条件语句和逻辑运算符

mood_index int(input("对象今天的心情怎么样!"))if mood_index > 80:print("今天可以好好happy一下了")print("O(∩_∩)O哈哈~") else:print("今天还是乖乖的吧!否则小命不保") #BMI 体重 /(身…

css实现闪烁渐变背景,@property自定义属性

自 2024 年 7 月起,此功能适用于最新的设备和浏览器版本。此功能可能无法在较旧的设备或浏览器中使用。 property 是 CSS 中一个相对较新的功能,主要用于定义自定义属性(即 CSS 变量)的类型、继承性以及初始值。它允许开发者更好地…

Linux --- 文件系统

1. 文件系统的概念 Linux 文件系统是一种用于管理、存储和组织数据的层次结构,用于在 Linux 操作系统中管理磁盘上的数据存储。它定义了如何在存储介质(如硬盘、固态硬盘或 USB 闪存)上组织文件和目录,以及如何读取、写入和操作这…

java整合DL645-2007与Dl645-1997

注意事项: 前导字节-一般在传输帧信息前,都要有0~4个FE不等,所以这里要注意,对于主站来说,直接发送4个FE作为前导字节即可。而从站回复,就不一定了,根据厂家不同而不同,有些没有FE的,也有4个FE的,所以对于接受程序,一定要慎重传输次序-所有的数据项都是先传低字节,…

鸿蒙HarmonyOS实战:IPC与RPC设备内进程通信

基本 IPC(Inter-Process Communication)与RPC(Remote Procedure Call)用于实现跨进程通信,不同的是前者使用Binder驱动,用于设备内的跨进程通信,后者使用软总线驱动,用于跨设备跨进…

Latex 插入图片或表格导致页面空白过多

如图所示: Latex 插入图片或表格导致页面空白过多 我们可以采用这个方式来减少空白。 \documentclass{article} \usepackage{graphicx} % 包含图形支持 \usepackage{caption} % 提供更多对caption的控制% 设置标题上方和下方的间距 \setlength{\abovecaptionskip}{…

学习记录:js算法(十二):柱状图中最大的矩形

文章目录 柱状图中最大的矩形我的思路网上思路 总结 柱状图中最大的矩形 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 示例 1:上图 输入:…

mac 安装Arthas

mac安装有两种方式 1.第一步安装Arthas 第一种: curl -L https://arthas.aliyun.com/install.sh | sh 第二种jar包形式 curl -O https://arthas.aliyun.com/arthas-boot.jar个人比较推荐第一种因为运行测试成功了 第一种安装后可能会出现一些命令不符合 需…

网安新声 | 从微软“狂躁许可”漏洞事件看安全新挑战与应对策略

网安加社区【网安新声】栏目,汇聚网络安全领域的权威专家与资深学者,紧跟当下热点安全事件、剖析前沿技术动态及政策导向,以专业视野和前瞻洞察,引领行业共同探讨并应对新挑战的策略与可行路径。 近期,微软披露了一个最…

CyberScraper-2077+simple-one-api:使用大模型爬虫

大模型相关目录 大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容 从0起步,扬帆起航。 swift与Internvl下的多模态大模型分布式微调指南(附代码和数据&#xff…

C语言典型例题50

《C程序设计教程(第四版)——谭浩强》 例题4.2 使用do……while语句循环求1234……100; 代码: //《C程序设计教程(第四版)——谭浩强》 //例题4.2 使用do……while语句循环求1234……100;#incl…

web后端(javaEE)开发——servlet

目录 一、web后端开发概述 二、web后端开发环境搭建 1.安装服务器软件 2.安装JDK 三、创建web后端项目 1.创建项目 2.修改设置 3.*在IDEA中集成Tomcat* 四、Servlet创建和应用 1.概述 2.Servlet程序创建与配置 3.分析Servlet程序结构 一、web后端开发概述 web开发&a…

Flutter ListView 实现不同样式 item

我们在实际开发中会创建显示不同类型内容的列表。以下是使用 Flutter 创建此类结构的方法: 1. 创建包含不同类型项目的数据源。 2. 将数据源转换为小部件列表。 创建包含不同类型项目的数据源 项目类型 要表示列表中不同类型的项目,请为每种类型的项目…

基于STM32开发的智能水箱液位控制系统

目录 引言环境准备工作 硬件准备软件安装与配置系统设计 系统架构硬件连接代码实现 系统初始化液位监测与控制水泵控制与状态显示Wi-Fi通信与远程监控应用场景 家庭用水系统的液位控制工业水箱的液位管理常见问题及解决方案 常见问题解决方案结论 1. 引言 智能水箱液位控制系…

初学Python如何快速入门(内附详细攻略),一文讲清

目前python可以说是一门非常火爆的编程语言,应用范围也非常的广泛,工资也挺高,未来发展也极好。 Python究竟应该怎么学呢,我自己最初也是从零基础开始学习Python的,给大家分享Python的学习思路和方法。一味的买书看书…

C语言基础(十二)

指针的用法&#xff1a; 测试代码1&#xff1a; #include "date.h" #include <stdio.h> // 函数声明&#xff0c;用于交换两个整数的值&#xff0c;通过指针传递 void swap(int *a, int *b); int main() { int time getTime();int nums[3] {3, 1, 4};…

【Python】列表和元组

文章目录 概念创建列表访问下标通过下标来修改列表元素获取列表长度下标可以写成负数 切片操作省略后边界省略前边界省略前后边界带有步长的切片 遍历列表元素使用 for 循环使用 for 循环访问下标的方式使用 while 循环 新增元素在末尾新增在任意位置新增 查找元素判定元素是否…

ESP RainMaker OTA 自动签名功能的安全启动

【如果您之前有关注乐鑫的博客和新闻&#xff0c;那么应该对 ESP RainMaker 及其各项功能有所了解。如果不曾关注&#xff0c;建议先查看相关信息&#xff0c;知晓本文背景。】 在物联网系统的建构中&#xff0c;安全性是一项核心要素。乐鑫科技对系统安全给予了极高的重视。ES…

【C# 】使用List<实体类>

1. 使用List<实体类> 要在C#中使用List<EntityTemp>并实现查找数据输出&#xff0c;首先需要定义EntityTemp类&#xff0c;并创建一个List<EntityTemp>类型的列表。然后&#xff0c;你可以使用LINQ或其他方法来查找和输出数据。 假设EntityTemp类具有一个…

Transformer总结(三):组件介绍(位置编码,多头注意,残差连接,层归一化,基于位置的前馈网络)

文章目录 一、位置编码1.1 介绍1.2 简单探讨 二、多头注意力2.1 一般的多头注意力机制2.2 解码器中的掩码多头注意力机制&#xff08;Look-ahead Mask&#xff09; 三、残差连接四、层归一化4.1 对比不同的Normalization4.2 Batch Normalization的实现4.3 Layer Normalization的…