docker-基本操作命令,生成docker镜像包

一、帮助启动类命令。

1、启动,命令:systemctl start docker

2、停止,命令:systemctl stop docker

3、重启,命令:systemctl restart docker

4、查看docker状态,命令:systemctl status docker

5、开机启动,命令:systemctl enable docker

6、查看docker概要信息,命令:docker info

7、查看docker整体帮助文档,命令:docker --help

8、查看docker命令帮助文档,命令:docker 具体命令 --help

二、镜像命令。

1、列出本地主机上的镜像,展示的是一个列表,表头含义如下:

repository:表示镜像的仓库源

tag:镜像的标签

images ID:镜像ID

created:镜像创建时间

size:镜像大小

命令:docker images

-a:列出本地所有镜像(包括历史镜像)

-q:只显示镜像ID

2、某个×××镜像名字,展示的是一个列表,表头含义如下:

name:镜像名称

description:镜像说明

stars:点赞数量

official:是否是官方的

automated:是否是自动构建的

命令:docker search

3、下载镜像,命令:docker pull 某个×××镜像名字,有两种命令:

a.docker pull 镜像名字[:TAG]

b.docker pull 镜像名字   没有tag就是最新版

4、查看镜像/容器/数据卷所占的空间,命令:docker system df

5、删除某个×××镜像名字ID(这里就不展示删除了),命令:docker rmi

删除单个,命令:docker rmi  -f  镜像ID

删除多个,命令:docker rmi  -f  镜像名1:TAG镜像名2:TAG

删除全部,命令:docker rmi  -f  $(docker images -qa)

三、容器命令。

1、新建+启动容器,命令:docker [options] image [command] [ARG......]

启动交互式容器(前端服务器)

--name=“容器新名字”

-d:后台运行容器

启动交互式,命令:docker run -it

-i:以交互模式运行容器  interactive

-t:为容器重新分配一个为输入终端  tyy

前台有伪终端,等待交互,命令:docker run -it Ubuntu bash/bin

P:随机终端口映射,大写P

p:指定终端口映射,小写p,常用此写法。

2、列出当前所运行的容器,命令:docker -ps [options]

常用命令:

docker -ps -a:列出当前所有正在运行的容器+历史上运行过的

docker -ps  -l:显示最近创建的容器

docker -ps  -q:静默模式,只显示容器ID

3、退出容器,有两种退出命令(这里不做展示)。

a.exit:run进去容器,exit推出,容器停止。

b.ctrl+p+q:run进去容器,ctrl+p+q退出,容器不停止。

4、启动已经停止的容器,命令:docker start 容器ID或容器名

5、重启容器,命令:docker restart 容器ID或容器名

6、停止容器,命令:docker stop 容器ID或容器名

7、强制停止容器,命令:docker kill 容器ID或容器名

8、删除已停止的容器,命令如下:

docker rm +容器ID,先停下来再删除

docker rm -f   容器ID/容器名    强制删除

一次性删除多个容器实例:docker rm -f   $(docker ps -a -q)

                                           docker ps -a -q | xargs docker rm

 9、启动守护式容器(后台服务器),命令:docker run -d 容器名

docker run -it redis:6.0.8 前台交互式启动

启动镜像,命令:docker run -it 容器id /bin/bash

docker run -d redis:6.0.8 后台守护式启动

10、查看容器日志,命令:docker logs 容器ID

11、查看容器内运行的进程,命令:docker top 容器ID

12、查看容器内部进程,命令:docker inspect 容器ID

13、进入正在运行的容器并进行命令交互,命令:docker exec -it 容器ID bashshell

重新进入,命令:docker attach 容器ID

attach:直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器停止。

exec:是在容器中打开新的终端,不会启动新的进程,用exit退出,不会导致容器终止,一般推荐使用这一种。

14、从文件拷贝内容到主机上,命令:docker cp 容器ID:容器内路径,目的主机路径

15、导出和导入容器。

export:导出容器的内容留作为一个tar归档文件(对应import命令)。

import:从tar包中的内容创建一个新的文件系统再导入为镜像(对应export命令)。

案例:

docker export 容器ID > 文件名.tar

cat 文件名.tar | docker import -镜像用户/镜像名:镜像版本号

四、外网联通的情况下安装vim命令,docker容器内执行以下两条命令。

1、apt-get update

2、apt-get -y install vim

四、生成docker镜像包

第一步,基于pull的基本镜像环境,创建dockerfile

## 基础镜像java
 FROM openjdk:8u265
 ## 作者是
 MAINTAINER cookie
 ## 就是你上传的jar包的名称。给jar包起个别名
 ADD user-1.0.0.jar /app/user.jar
 ## 就是在容器中以多少端口号运行
 EXPOSE 7001
 ## 容器启动之后执行的命令,java -jar spring_boot.jar 即启动jar
 ENTRYPOINT ["java","-Dspring.profiles.active=test","-jar","-Xmx512m","-Xms512m","-Xmn200m","/app/user.jar"]

第二步,启动镜像,进行测试

docker run -d --restart=always --name xxxx -p 7001:7001   -v  服务器目录:容器目录  user:V1.0

例:

docker run -d --restart=always --name user -p 7001:7001 -v  /test/user/log:/app/log user:V1.0 

进入docker容器命令

docker exec -it  xxxx /bin/bash

例:

docker exec -it  user /bin/bash

第三步,打包镜像,保存到服务器

注意build后面的空格和点

save docker的ID到默认路径下

docker build -t xxxx:[tag] .

docker save  xxxxx  > xxxx.tar

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

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

相关文章

开源即时通讯(IM)项目OpenIM源码部署流程

由于OpenIM依赖的组件较多,开发者需求不一,导致OpenIM部署一直被人诟病,经过几次迭代优化,包括依赖的组件compose的一键部署,环境变量设置一次,全局生效,以及脚本重构,目前OpenIM部署…

2023CSP游寄

初赛 DAY -2 才刚考开学测就来初赛。 复赛之后就是月测,这就是初三吗。 初中最后一次 CSP,如果 S 没一等就得摆烂了。希望别因为各种原因爆炸。 中午下午借着刷初赛题的名义摆烂,半道题都没写。 CSP2023RP 初赛 DAY -1 看我发现了什么。…

SpringBoot 集成 SpringSecurity 从入门到深入理解

完整的目录 介绍 SpringSecurity简述 SpringSecuritySpringSecurity 的主要功能说明 项目源码入门案例项目工程路径第一步:加载依赖第二步:创建核心的配置类第三步:增加controller第三步:启动程序小结界面跳转说明密码生成说明 重…

使用Python来写模拟Xshell实现远程命令执行与交互

一、模块 这里使用的是 paramiko带三方库 pip install paramiko二、效果图 三、代码实现(这里的IP,用户名,密码修改为自己对应服务器的) import paramiko import timeclass Linux(object):# 参数初始化def __init__(self, ip, us…

python 使用requests爬取百度图片并显示

爬取百度图片并显示 引言一、图片显示二、代码详解2.1 得到网页内容2.2 提取图片url2.3 图片显示 三、完整代码 引言 爬虫(Spider),又称网络爬虫(Web Crawler),是一种自动化程序,可以自动地浏览…

【前端知识】Three 学习日志(四)—— 相机控件

Three 学习日志&#xff08;四&#xff09;—— 相机控件 一、引入相机控件 <!-- 引入相机控件 --> <script type"importmap">{"imports": {"three": "../build/three.module.js","three/addons/": "../…

C#,数值计算——Hashtable的计算方法与源程序

1 文本格式 using System; using System.Collections; using System.Collections.Generic; namespace Legalsoft.Truffer { public abstract class Hashtable<K> { private int nhash { get; set; } private int nmax { get; set; } pr…

Gof23设计模式之责任链模式

1.概述 责任链模式又名职责链模式&#xff0c;为了避免请求发送者与多个请求处理者耦合在一起&#xff0c;将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链&#xff1b;当有请求发生时&#xff0c;可将请求沿着这条链传递&#xff0c;直到有对象处理它为止…

Vue3记录

Vue3快速上手 1.Vue3简介 2020年9月18日&#xff0c;Vue.js发布3.0版本&#xff0c;代号&#xff1a;One Piece&#xff08;海贼王&#xff09;耗时2年多、2600次提交、30个RFC、600次PR、99位贡献者github上的tags地址&#xff1a;https://github.com/vuejs/vue-next/releas…

Vue3搭配Element Plus 实现候选搜索框效果

直接上代码 <el-col :span"14" class"ipt-col"><el-input v-model"projectName" class"w-50 m-2" input"inputChange" focus"inputFocusFn" blur"inputBlurFn" placeholder"请输入项目名…

同样的UWB,为什么定位精度差很多?

纵观以UWB技术为核心的应用与电厂、化工厂等工业企业人员定位系统&#xff0c;在定位精度上都声称能够达到厘米级精准&#xff0c;然而实际应用上却总是差了些许意思。任何产品都有理论值与实际值&#xff0c;例如某些新能源汽车号称标准续航300公里&#xff0c;但实际上可能连…

用GoConvey编写单元测试的一些总结

一、尽量用Convey将所有测试用例的Convey汇总 用Convey嵌套的方法&#xff0c;将所有测试用例的Convey用一个大的Convey包裹起来&#xff0c;每个测试函数下只有一个大的Convey。比如下面的示例代码&#xff1a; import ("testing". "github.com/smartystreet…

Linux--线程(与进程区别)

Linux线程 1、线程与进程 进程可以看成只有一个控制线程&#xff1a;一个进程同时只做一件事情。有了多个控制线程后&#xff0c;可以把进程设计成在同一时刻做不止一件事&#xff0c;每个线程各自处理独立的任务。 进程是程序执行时的一个实例&#xff0c;是分配系统资源&am…

【面试题】智力题

文章目录 腾讯1000瓶毒药里面只有1瓶是有毒的&#xff0c;问需要多少只老鼠才能在24小时后试出那瓶有毒。有两根不规则的绳子&#xff0c;两根绳子从头烧到尾均需要一个小时&#xff0c;现在有一个45分钟的比赛&#xff0c;裁判员忘记带计时器&#xff0c;你能否通过烧绳子的方…

C++---异常处理

异常处理 异常处理try语句块和throw表达式异常的抛出和捕获异常的抛出和匹配原则 异常安全异常规范标准异常 异常处理 异常是指存在于运行时的反常行为&#xff0c;这些行为超出了函数正常功能的范围。当程序的某部分检测到一个他无法处理的问题时&#xff0c;需要用到异常处理…

transforms数据预处理【图像增强】 ->(个人学习记录笔记)

文章目录 1. 安装2. transforms——Crop 裁剪2.1 transforms.CenterCrop2.2 transforms.RandomCrop2.3 transforms.RandomResizedCrop2.4 transforms.FiveCrop2.5 transforms.TenCrop 3. transforms——Flip 翻转3.1 transforms.RandomHorizontalFlip3.2 transforms.RandomVert…

leetcode 817. 链表组件(java)

链表组件 题目描述HashSet 模拟 题目描述 给定链表头结点 head&#xff0c;该链表上的每个结点都有一个 唯一的整型值 。同时给定列表 nums&#xff0c;该列表是上述链表中整型值的一个子集。 返回列表 nums 中组件的个数&#xff0c;这里对组件的定义为&#xff1a;链表中一段…

【学习笔记】EC-Final 2022 K. Magic

最近的题都只会抄题解&#x1f605; 首先&#xff0c;操作顺序会影响答案&#xff0c;因此不能直接贪心。其次&#xff0c;因为是求贡献最大&#xff0c;所以可以考虑枚举最终哪些位置对答案产生了贡献&#xff0c;进而转化为全局贡献。 1.1 1.1 1.1 如果 [ l 1 , r 1 ) ⊆ [ …

zabbix学习1--zabbix6.x单机

文章目录 1. 环境2. MYSQL8.02.1 单节点2.2 配置主从 3. 依赖组件4. zabbix-server5. agent5.1 yum5.2 编译 附录my.cnfJDK默认端口号 1. 环境 进入官网查看所需部署环境配置以及应用版本要求https://www.zabbix.com/documentation/current/zh/manual/installation/requiremen…

MySQL 解决数据重复添加

1. sql语句: insert ignore into insert ignore into 表名 (xx1,xx2,xx3) VALUES (#{xx1},#{xx2},#{xx3}) 2. 复合索引