【云原生·Docker】常用命令
目录
🍁1、管理命令
🍁2、帮助命令
🍁3、镜像命令
🍁4、容器命令
🍂4.1.查看容器
🍂4.2.创建容器
🍂4.3.删除容器
🍂4.4.拷贝文件
🍂4.5.查看容器IP
🍁5、部署服务
🦐博客首页:大虾好吃吗的博客
本篇文章对你或许比较枯燥,但是学docker的前提就是要知道基础命令。一个命令往往有很多个参数,一种参数一种用途,本篇将针对常用命令重点讲解,可收藏保存以备不时之需。
学习命令前,你要先了解docker的三个概念。
打包:把服务运行所需的依赖、第三方库、打包成一个安装包。
分发:把你打包好的安装包上传到一个镜像仓库,其他人可以很方便的安装部署。
部署:使用分发下来的安装包,一条命令就可以运行起来,自动模拟出一模一样的运行环境,不管是在 Windows/Mac/Linux。
1、管理命令
systemctl start docker #启动docker
systemctl stop docker #关闭docker
systemctl restart docker #重启docker
systemctl enable docker #开机自启
systemctl status docker #查看运行状态
docker kill 容器id #强制停止当前容器
docker pause 容器id #挂起容器
docker unpause 容器id #恢复挂起
docker commit 容器id 镜像名 #把容器制作成镜像
docker volume ls #查看 volume 列表
docker network ls #查看网络列表
2、帮助命令
docker --help #帮助命令
docker version #查看版本信息
docker info #查看版本信息
帮助文档的地址:docker
3、镜像命令
镜像:可以理解为软件安装包,方便进行传播和安装。
docker images #查看本地主机上的镜像(-a:列出所有镜像;-q:只显示镜像id;-aq:显示所有镜像的id)
docker search nginx #搜索nginx镜像(--filter=STARS=3000 搜索出来的镜像就是starts 大于等于3000的,用来过滤下载数量)
docker pull nginx #下载nginx镜像(默认为最新版,如需指定版本:docker pull nginx:1.21.0)
docker rmi {服务名|ID} #删除镜像(-f选项强制删除;删除多个镜像用空格分隔)
docker rmi -f $(docker images -aq) #删除全部镜像
下载nginx镜像并查看
[root@doc ~]# docker pull nginx
[root@doc ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 605c77e624dd 14 months ago 141MB
REPOSITORY | TAG | IMAGE ID | CREATED | SIZE |
---|---|---|---|---|
镜像的仓库源 | 镜像标签 | 镜像ID | 镜像创建的时间 | 镜像大小 |
4、容器命令
容器:软件安装后的状态,每个运行环境都是独立的、隔离的。可以理解为有很多个房间,而每一个房间只有一种物品,这种物品又是独一无二的,这种称之为容器。
4.1.查看容器
docker ps [参数] # 列出当前正在运行的容器(等同于docker container list)-a # 带出历史运行过的容器-q # 只显示容器的编号
4.2.创建容器
docker run [参数] 镜像名
# 参数说明--name="Name" 容器名字 tomcat01 tomcat02, 用来区分容器-i 运行容器-d 后台方式运行-t 启动容器后自动进入命令行-it 使用交互方式运行,进入容器查看-id 使用守护方式运行,不进入容器查看-p 指定容器的端口 -p 8080:8080-p ip:主机端口:容器端口-p 主机端口:容器端口(常用)-p 容器端口(随机映射到外部端口,一般32000+)-P 随机映射端口(大写)
案例:
1.创建容器my_web1、2,nginx为最新版,启动环境/bin/bash
docker run -it --name=my_web1 nginx:latest /bin/bash #创建并启动容器(交互式)使用exit退出容器,从容器中退回主机,容器关闭(想要容器持续运行,添加参数-d)
docker run -id --name=my_web2 nginx:latest /bin/bash #创建容器但不启动(守护式)
docker exec -it my_web2 /bin/bash #登录容器
2.创建容器,指定端口和随机端口映射
docker run -d --name web1 -p 8080:80 nginx /bin/bash #指定端口映射
docker run -d --name web2 -p 8081:80 nginx /bin/bash #指定端口映射
docker run -d --name web3 -p 80 nginx /bin/bash #随机映射端口
docker run -d --name web4 -P nginx /bin/bash #随机映射端口
4.3.删除容器
docker rm {容器id|容器名} # 删除指定容器,不能删除正在运行的容器,如果要强制删除添加-f选项
docker rm -f $(docker ps -aq) # 删除所有的容器
docker ps -a -q | xargs docker rm -f # 删除所有的容器
4.4.拷贝文件
docker cp 需要拷贝的文件或目录 容器名称:容器目录 #把宿主机的文件拷贝到容器里
docker cp 容器名称:容器目录 需要拷贝的文件或目录 #从容器中拷贝文件到宿主机
4.5.查看容器IP
docker inspect 容器id
5、部署服务
要求:使用centos安装nginx等,并制作成镜像。
[root@doc ~]# docker search centos #搜索镜像
[root@doc ~]# docker pull centos:7 #拉取镜像
下图内容提示下载镜像成功。
使用命令查看下载的镜像、版本、ID等信息。
守护式创建名为nginx1的容器,映射端口号80。
[root@doc ~]# docker run -itd --name nginx1 -p 80:80 centos:7 /bin/bash
0d97dd210fd5cd151560744694dcc09d5d56ac960741bb91109d9fad4788ff9e
[root@doc ~]# docker exec -it nginx1 /bin/bash
[root@c280bd02a56b /]# #登录成功
创建好容器后,下载nginx服务,以及所需的工具,通过commit命令制作成镜像,下次需要使用nginx服务使用nginx_v1镜像,直接就可以创建了。
[root@c280bd02a56b /]# yum -y install epel-release #下载epel源
[root@c280bd02a56b /]# yum -y install vim net-tolls nginx #下载工具及网站服务
[root@doc ~]# docker commit nginx1 nginx_v1 #把nginx1容器制作成镜像,镜像名为nginx_v1
sha256:8ac8aab96ad07a4d75852ebd96adf8622b2045aa263c94b35be44e6b11485180
相关文章:

【云原生·Docker】常用命令
目录 🍁1、管理命令 🍁2、帮助命令 🍁3、镜像命令 🍁4、容器命令 🍂4.1.查看容器 🍂4.2.创建容器 🍂4.3.删除容器 🍂4.4.拷贝文件 🍂4.5.查看容器IP 🍁5、部署…...

户外露营储能电源芯片CSU3AF10
户外露营的项目有很多,随着户外储能电源的发展,越来越多的电子产品可以在户外使用,也不用担心因为在户外时间过长而手机或者其他电子产品电量耗尽。户外储能电源可保证人们随时随地的用电需求,同时也可以满足家电炊具的供电需求&a…...

无线WiFi安全渗透与攻防(八)之WEP-Hirte渗透WEP加密
WEP-渗透WEP新思路–Hirte 1.Hirte介绍 Hirte是破解无线网络WEP Key的一种攻击类型 只要客户端设备(笔记本电脑,手机等)连接过的无线网络,那些WIFI即使是不在攻击者范围内也都能被破解,因为该wifi的WEP密钥和配置文…...

前端常考面试题整理
display:none与visibility:hidden的区别 这两个属性都是让元素隐藏,不可见。两者区别如下: (1)在渲染树中 display:none会让元素完全从渲染树中消失,渲染时不会占据任何空间;visibility:hidden不会让元素…...

二十二、身份验证与权限
一、 准备工作 为了讲清楚身份验证与权限,我们再创建一个应用projects,设计模型如下: class Project(models.Model):name models.CharField(项目名称, max_length20, help_text项目名称)desc models.CharField(项目描述, max_length200, help_text项目…...

k8s pod 升级与回滚
当集群中的某个服务需要升级时,我们需要停止目前与该服务相关的所有pod,然后下载新版本镜像并创建新的pod。如果集群规模比较大,则这个工作变成了一个挑战,而且先全部停止然后逐步升级的方式会导致较长时间的服务不可用。kubernet…...

【Go】Go语言开发环境安装
【Go】Go语言开发环境安装 导入 安装环境:Winowds 我现在是win7安装的,与win10整体步骤是一样的,只是部分显示的时候有点差异不影响; 【名词】 编译器:先将代码编译成可执行文件,再执行; —…...

el-switch使用
效果图: 1.表格代码,给el-waitch加上change事件 <el-table-column prop"status" label"状态" align"center" width"150"> <template slot-sc…...

【算法入门】字符串基础
目录 一.字符串引言1.字符串基础二.洛谷P5734详解1.字符串相关库函数💫(1) strcpy函数 💫💫(2) strcat函数 💫💫(3)strstr函数 💫2.题…...

前端面试题 —— 浏览器原理(二)
目录 一、有哪些可能引起前端安全的问题? 二、网络劫持有哪几种,如何防范? 三、浏览器渲染进程的线程有哪些 四、僵尸进程和孤儿进程是什么? 五、为什么需要浏览器缓存? 六、对浏览器的理解 七、CSS 如何阻塞文档解析&…...

对于植物神经紊乱的治疗 中医采用辩证论治的方法
植物神经紊乱是由于心理压力过大、长期生活不规律所导致的一种疾病,这种疾病的发生往往是症状多样、涉及广泛的。当患有植物神经紊乱之后,主要的症状会以躯体化障碍为常见症状,但是很多患者还会出现情绪失控、睡眠障碍等问题。 对于植物神经紊…...

chatGPT之Python API启用上下文管理
chatGPT已经爆火一段时间了,我想大多数的开发者都在默默的在开发和测试当中,可能也是因为这个原因所以现在很难找到关于开发中遇到的一些坑或者方法和技巧。为什么别人的机器人能联想之前的语料,而你的却像个每次都只如初见的高冷机器人&…...

油田钻井实时在线监测系统
油田钻井的井下油层的压力不断变化,环境深度和压力巨大,且井下原油具有一定的流动性,实时在线压力监测是石油开采行业的难点。为更好地了解油田开采过程中油层的状况,提高油田开采效率和产量,油田钻井实时在线监测系统…...

经典PID控制算法原理以及优化思路
文章目录0、概念1、理解2、实现3、优化4、引用0、概念 PID算法是工业应用中最广泛算法之一,在闭环系统的控制中,可自动对控制系统进行准确且迅速的校正。PID控制,即Proportional – Integral(I) – Derivative(D) Control, 实际上是三种反馈…...

经典面试题之赋值和深浅拷贝的区别
1.区别 **赋值:**基本数据直接拷贝,互不影响,引用数据把地址赋值给新对象,新旧对象指向同一个地址。 **浅拷贝: **基本类型之间互不影响,对象只会复制对象的第一层基本数据和引用类型的地址,对象内部嵌套的…...

电子取证的电脑配置有关问题,以我仅有的知识为大家建议一下。
电子取证火力很重要,用轻薄本是没法取证的,所以至少是全能本或者是游戏本,牛逼的选手上台式,参考浙警许专家,yyds我专家! 我从实战出发,参考历年“美亚杯”和“长安杯”比赛,给大家…...

【基础算法】单链表的OJ练习(5) # 环形链表 # 环形链表II # 对环形链表II的解法给出证明(面试常问到)
文章目录前言环形链表环形链表 II写在最后前言 本章的OJ练习相对于OJ练习(4)较为简单。不过,本章的OJ最重要的是要我们证明为何可以这么做。这也是面试中常出现的。 对于OJ练习(4):-> 传送门 <-,分割链表以一种类似于归并的思想解得&a…...

MySQL 基础教程[13]
MySQL 基础教程[13]问题1问题1代码问题2问题2代码本系列MySQL 基础教程通过“问题-代码”的方式介绍各类方法,每篇设置2个MySQL综合问题,并给出解决方案。 问题1 kwgl数据库中有学生基本信息表student和系别表dept。表结构及说明如下: student (sid, s…...

个人练习-Leetcode-826. Most Profit Assigning Work
题目链接:https://leetcode.cn/problems/most-profit-assigning-work/ 题目大意:给出一串任务,difficulty表示任务难度,profit表示任务的收益(以下简称diff和pro)。给出一串工人的能力worker。每个工人只能…...

云原生周刊:边缘计算会吞噬云吗?| 2023.3.13
文章推荐 边缘计算吞噬云? 这篇文章讨论了边缘计算对传统云计算的潜在冲击。 边缘计算是一种新型的计算架构,它将计算移动到离数据源和终端设备更近的地方,从而提供更快的响应时间和更好的用户体验。相比之下,云计算是一种集中…...

python+django+vue图书个性化推荐系统
整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。 本图书个性化推荐系统结构图如图python manage.py runserver 开…...

经典文献阅读之--LIO-PPF(增量平面预拟合LIO)
0. 简介 自从ikd-tree出来后,现在越来越多的工作瞄准了增量式这种方法,比如说激光惯导里程计(LIDAR-Inertial Odometry,LIO)的高精度跟踪通常涉及最小化点到平面距离的k最近邻(kNN)搜索&#x…...

ChatGPT背后有哪些关键技术?CSIG企业行带你一探究竟
目录1 ChatGPT的时代2 CSIG企业行3 议题&嘉宾介绍3.1 对生成式人工智能的思考3.2 对话式大型语言模型研究3.3 文档图像处理中的底层视觉技术4 观看入口1 ChatGPT的时代 2015年,马斯克、美国创业孵化器Y Combinator总裁阿尔特曼、全球在线支付平台PayPal联合创始…...

C#基础之面向对象编程(二)
总目录 文章目录总目录前言一、概述1. 定义2. 面向对象的三大特性二、封装1. 定义2. 属性三、继承1. 定义2. 继承的使用3. base 和this四、多态1. 定义2. 重写和重载3. 多态性的实现1、静态多态性2、动态多态性4. 向上转型和向下转型1、定义2、语法格式3、案例结语前言 本文主…...

蓝桥杯刷题冲刺 | 倒计时25天
作者:指针不指南吗 专栏:蓝桥杯倒计时冲刺 🐾马上就要蓝桥杯了,最后的这几天尤为重要,不可懈怠哦🐾 文章目录1.完全二叉树1.完全二叉树 题目 链接: 完全二叉树的权值 - 蓝桥云课 (lanqiao.cn) 给…...

c语言—动态内存管理
一.为什么存在动态内存开辟开辟空间的特点:空间开辟大小是固定的数组在申明时,必须指定数组长度,她所需要的内存在编译时分配但是对于空间的需求,不仅仅是上述的情况。有时候我们需要的空间大小在程序运行的时候才能知道ÿ…...

请说明Ajax、Fetch、Axios三者的区别
相同点: 1、三者都用于网络请求,但是不同维度 2、 Ajax(Asynchronous Javascript and XML),一种技术的统称,并不是实际的API 3、Fetch是一个具体的API,浏览器里面直接有一个API就叫Fetch 4、 Axios是一个第三方库&…...

阿里p8测试总监,让我们用这份《测试用例规范》,再也没加班过
经常看到无论是刚入职场的新人,还是工作了一段时间的老人,都会对编写测试用例感到困扰?例如: 固然,编写一份好的测试用例需要:充分的需求分析能力 理论及经验加持,作为测试职场摸爬打滚的老人&…...

【Unity】数据持久化路径Application.persistentDataPath
今天突然想到这个路径Application.persistentDataPath,热更的重要路径,该文件夹可读可写,在移动端唯一一个可读写操作的文件夹。移动端可以将本地的资源(资源MD5值配置表)等一些文件放到StreamingAssets文件夹下&#…...

华为OD机试 - 插队(Java JS Python)
题目描述 某银行将客户分为了若干个优先级, 1 级最高, 5 级最低,当你需要在银行办理业务时,优先级高的人随时可以插队到优先级低的人的前面。 现在给出一个人员到来和银行办理业务的时间序列,请你在每次银行办理业务时输出客户的编号。 如果同时有多位优先级相同且最高…...