Docker的安装与简单操作命令

目录

前言

docker的安装

基础docker操作

容器管理

镜像管理

容器镜像封装与加载


前言

前文简单说明了容器技术出现的背景,与对docker做了结构上的介绍Container容器技术简介-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/qq_72569959/article/details/134814887

讲到docker的运行是由三个关键组件组成的,本文则是讲解了docker的安装方法与操作命令

1、镜像image
只读状态的,docker通过image创建container 类似于在VMwareworkstation上创建虚拟机所使用的iso文件,iso是一种光盘格式的镜像

docker images
REPOSITORY    TAG       IMAGE  ID          CREATED         SIZE
hello-world         latest  9c7a54a9a43c    7 months ago       13.3kB

镜像来源有几种:远端仓库、本地仓库、docker tar、docker file,可以通过以下几种方式进行制作,稍后会细说
docker pull #远端拉取
docker build #通过docker file构建
docker load #拉取压缩包
docker commit #通过已有container重新封装

2、容器container

3、镜像仓库registry
远端仓库:hub.docker.com,阿里云仓库等
本地仓库可以自己搭建

docker的安装

环境可以比较随意

VMwareworkstation17 pro

centos7.8.2003

NAT网络

#1、通过get.docker.com官网下载get-docker.sh,并且增加参数,跳过安全验证
curl -fskSL get.docker.com -o get-docker.sh#2、下载安装
#从外网直接安装
sudo sh get-docker.sh
#从阿里云安装
sudo sh get-docker.sh --mirror Aliyun#3、自启动
systemctl enable docker --now#4、把用户添加到docker组内,使其可以使用docker
usermod -aG docker ws
id ws
#uid=1000(ws) gid=1000(ws) groups=1000(ws),982(docker)
su - ws#5、测试
docker run hello-world#6、查看docker守护进程
ps -ef | grep -i dockerd
root      13168  0.4  1.9 1554288 75428 ?       Ssl  18:40   0:57 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

基础docker操作

查看docker版本

docker --version

docker version

#查看docker状态,可以看到docker的客户端与服务器状态、远端仓库地址等

docker info

容器管理

#容器运行
docker run httpd #直接在前台运行
docker run -d #在后台运行
docker run -p 1234:8080/tcp #端口映射,指定端口,将宿主机端口1234映射到容器8080端口,指定tcp协议
docker run -P #端口映射,随机端口
docker run --name #指定名字
docker run -it ...... /bin/bash#使其可交互,并且分配bash
docker run -v 宿主机路径:容器内地址 #指定外部挂载到容器内部,建议使用绝对路径
eg:docker run -itd --name test -p 1234:8080/tcp -v /iso:/var/tftp/boot centos /bin/bash
#CONTAINER ID   IMAGE     COMMAND       CREATED          STATUS          PORTS                                       NAMES
#886c57251999   centos    "/bin/bash"   37 seconds ago   Up 36 seconds   0.0.0.0:1234->8080/tcp, :::1234->8080/tcp   test#重新进入已经后台运行的容器
docker exec -it 886c57251999 /bin/bash
exit #退出#启动与关闭
docker start containerID #容器,启动!
docker restart containerID #重启#查看正在运行的docker container
docker ps
#查看所有的docker container,包括没起来的
docker ps -a
#查看所有的正在运行docker的容器id
docker ps -q#关闭容器
docker stop containerID #正常关闭
docker stop $(docker ps -aq) #全部关闭
docker kill containerID #强制关闭#删除容器
docker rm containerID
docker rm -f containerID #强制删除
docker rm $(docker ps -aq) #全部删除#复制文件
docker cp 宿主机⽂件路径 容器id:路径

镜像管理

#在镜像仓库中搜索镜像
docker search httpd#从docker官网拉取镜像
#使用阿里云镜像加速,拉取镜像就会优先从远端阿里云仓库拉取,就会快很多
#https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
docker pull httpd
docker pull mysql:5.7 #指定版本拉取#查看镜像
docker images
docker images -a #查看所有镜像
docker images -q #只查看镜像id
#给image添加tag
docker tag xxxxxxxx httpd#删除镜像,默认删除latest版本
docker rmi httpd #指定名称
or
docker image rm httpd #同意思
docker rmi hello-world:latest #指定版本
docker rmi -f hello-world #强制删除

容器镜像封装与加载

#搭建环境
docker pull centos/httpd-24-centos7
docker run -d -p 10001:8080 --name cm01 centos/httpd-24-centos7

#容器打包
#docker commit -m "描述信息" -a "作者信息" 容器ID/容器名称 ⾃定义镜像名称:⾃定义标签
docker commit -m "ws" -a "ws" cm01 wsapache:v1.0

#镜像封装
#docker save 镜像名称:标签 -o 镜像打包的⽂件名 #默认当前目录
docker save wsapache:v1.0 -o wsapache.tar

 #清理环境

docker stop cm01

docker rm cm01

docker rmi wsapache:v1.0

#镜像加载与运行

docker load -i wsapache.tar

docker run -d -p 10001:8080 --name cm01 wsapache:v1.0

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

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

相关文章

研究前沿| Nat Communi:大豆节间距调控基因RIN1的分子机制解析

引言 株型是决定作物产量的重要性状。以半矮秆利用和提高氮肥利用效率为标志的绿色革命提高了作物抗倒伏能力,使水稻、小麦等作物可以通过密植提高单产,产量大幅提升。但是,大豆绿色革命基因尚未发现,与水稻和小麦产量提升相比&am…

Java研学-jdbc(一)

一 概述 1 持久化概述 持久化(persistence): 把内存中的数据保存到可掉电式存储设备 (硬盘、U盘等) 中以供之后使用。   数据持久化是将数据保存到各种关系数据库, 而在 Java中,数据库存取技术只能通过 jdbc 来访问数据库。jdbc 是 Java 语言访问数据…

如何用CHAT了解历史?

问CHAT:古代有什么常见的简单机械? CHAT回复: 1. 滑轮:滑轮是一种简单的机械,主要提供力量放大、改变力的方向等功能。在古代,人们使用滑轮来托起重物,如水井的提水装置,建造大型建…

大模型元年压轴盛会定档12月28日,第十届WAVE SUMMIT即将启航

文章目录 1. 前言2. WAVE SUMMIT五载十届,AI开发者热血正当时3. 酷炫前沿、星河共聚!大模型技术生态发展正当时 1. 前言 回望2023年,大语言模型或许将是科技史上最浓墨重彩的一笔。从技术、产业到生态,大语言模型在突飞猛进中加速…

【python中类的介绍】

python中类的介绍 在Python中,定义类需要使用关键字 class类名通常使用大写字母开头,举例: class MyClass:pass解释:定义了一个MyClass的空类。 1、python中类定义 “”" 类中可以定义属性和方法。 1、属性是类的数据成…

使命召唤9缺少buddha.dll的解决方法分享,如何快速修复buddha.dll

《使命召唤》系列作为备受欢迎的第一人称射击游戏,经常会在新作发行后引起广大玩家的讨论。最近,《使命召唤9》玩家中出现了一个常见的技术问题:游戏无法启动,因为系统找不到 buddha.dll 文件。这篇文章将探讨 buddha.dll 的相关信息、丢失原…

软件外包的 20 个问题以及如何避免这些问题

外包很常见。 三分之二的企业进行外包。全国范围内,以某种身份从事自由职业。这意味着全国 40% 的劳动力是个体户或从事零工。 客户支持、软件开发和营销是最常见的外包职能。 外包可以节省成本、提高速度和灵活性。 但这并非没有问题。外包的常见问题最终可能会…

MATLAB中ode45和ode23有什么区别

总的来说二者算法相似,只不过ode45比ode23精度要高一些,其他没什么差别。 具体ode是MATLAB专门用于解常微分方程的功能函数;solver有变步长(variable-step)和定步长(fixed-step)两种类型,不同类型有着不同的求解器。ode45求解器属…

gdb本地调试版本移植至ARM-Linux系统

移植ncurses库 本文使用的ncurses版本为ncurses-5.9.tar.gz 下载地址:https://ftp.gnu.org/gnu/ncurses/ncurses-5.9.tar.gz 1. 将ncurses压缩包拷贝至Linux主机或使用wget命令下载并解压 tar-zxvf ncurses-5.9.tar.gz 2. 解压后进入到ncurses-5.9目录…

智能优化算法应用:基于鸡群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于鸡群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于鸡群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.鸡群算法4.实验参数设定5.算法结果6.参考文献7.MA…

“拼团购”实现商业爆发式增长,魅力吸引消费者多次参与

每天五分钟讲解一个电商模式,大家伙我是模式策划阿浩在当今电商行业快速发展的时代,拼团模式作为一种新兴的商业模式,正逐渐受到广大消费者的青睐。拼团模式通过多人组团购买同一件商品,借助社交媒体等渠道的传播,实现…

arcgis for js 添加自定义叠加图片到地图坐标点上

在使用arcgis for js开发地图绘制图层时,可以通过相关api实现添加图标到某个坐标点,那么如果现在有一个需要添加一个小图叠大图的需求,又或者是自定义绘制图标,如何实现? 1、简单地绘制一个图标到底图图层上面 const…

C++STL之List的实现

首先我们要实现List的STL,我们首先要学会双向带头链表的数据结构。那么第一步肯定是要构建我们的节点的数据结构。 首先要有数据域,前后指针域即可。 再通过模板类进行模板化。 然后再写List的构造函数,这个地方用T&,通过引用就可以减少一次形参拷…

JavaFX窗口生成

JavaFX 窗口生成 JavaFX中存在Application类,用于窗口的初始化(init())、显示(show())、结束(stop())操作。 步骤 (不适用于jdk11及以上版本) 调用静态方法launch(S…

vue2-elementUI部分组件样式修改

el-radio样式: /deep/ .el-radio__input .el-radio__inner {width: 20px;height: 20px;position: relative;cursor: pointer;-webkit-appearance: none;-moz-appearance: none;appearance: none;border: 1px solid #999;border-radius: 0;outline: none;transition…

阿里云cdn设置相同的域名路径访问不同的oss目录

1.设置回源配置,添加回源URL改写 2.设置跨域,cdn的跨域优先oss 3.回源设置

电商早报 | 12月12日| 淘宝公布2023年度商品初选名单入围

淘宝公布2023年度商品初选名单:军大衣、酱香拿铁、熊猫周边入围 又一年临近收官,淘宝如期启动了“2023年度十大商品”评选。 12月11日,淘宝官方发布了初选入围名单,30件最具代表性的商品脱颖而出。据淘宝路边社介绍,…

784. 字母大小写全排列

字母大小写全排列 描述 : 给定一个字符串 s ,通过将字符串 s 中的每个字母转变大小写,我们可以获得一个新的字符串。 返回 所有可能得到的字符串集合 。以 任意顺序 返回输出。 回文串 是正着读和反着读都一样的字符串。 题目 : LeetCode 784. 字母…

10、RocketMQ的Comsumer的消息队列的分配

前置知识:RocketMQ的topic存在多个队列,而多个topic分配在同一消费组里面,消费组里面存在多个消费者,当消费者注入到消费组时要进行消费者与多个队列之间的分配,而这种分配被称之为Rebalance机制,该机制的本…

Linux命令大全(全网最细讲解)

文章目录 一、基础知识(1) Linux系统的文件结构(2) Linux系统命令行的含义(3)命令的组成二、基础操作(1) 关闭系统(2) 关闭重启(3) 帮…