Docker基本命令使用——(1)

2023-11-10

运行流程

Docker常用命令

  • docker images --列出本地主机上的镜像
    - -a 列出本地所有的镜像 含中间映像层
    - -q 只显示镜像ID
    - --digests 显示镜像的摘要信息
    - --no-trunc 显示完整的镜像信息
  • docker search xxx – 搜索镜像
[root@aliyun-hades docker]# docker search tomcat
NAME                          DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
tomcat                        Apache Tomcat is an open source implementati…   2951      [OK]       
tomee                         Apache TomEE is an all-Apache Java EE certif…   86        [OK]       
dordoka/tomcat                Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 base…   55                   [OK]
bitnami/tomcat                Bitnami Tomcat Docker Image                     37                   [OK]
kubeguide/tomcat-app          Tomcat image for Chapter 1                      29                   

  • docker pull xxx 下载镜像 - - 不写版本号 默认下载最新版
  • docker rmi xxx 删除某个镜像 xxx为镜像ID 或者唯一镜像名
    • docker rmi -f 强制删除
    • docker rmi -f $(docker images -q) 删除全部
  • docker run 启动容器 ☆☆☆☆☆
    • –name 为容器指定新名称
    • -d后台运行容器
    • -i 以交互模式运行容器 ,通常与-t同时使用
    • -t 为容器重新分配一个伪输入终端 通常与-i同时使用
    • -P 随机端口映射
    • -p 指定端口映射
  • docker ps 列出正在运行的容器
  • exit 关闭容器并且退出容器 如果在docker 容器内 输入 exit 退出容器
  • ctrl+P+Q 容器不停止退出
  • docker ps -l 查看上一次运行的容器
  • docker ps -n 5 查看最近5次运行过的容器
  • docker ps -l -q 查看最近一次运行容器的编号
  • docker start XXX(容器名称或者容器ID) 启动容器
  • docker restart XXX(容器名称或者容器ID) 容器重启
  • docker stop XXX(容器名称或者容器ID) 停止容器
  • docker kill XXX(容器名称或者容器ID) 强制停止容器
  • docker rm XXX(容器名称或者容器ID) 删除已经停止的容器记录
  • docker rm -f XXX(容器名称或者容器ID) 强制删除容器包括正在运行的容器
  • docker rm -f $(docker ps -a -q ) 删除所有容器
  • docker run -d 容器名 启动守护式容器 (后台运行)
  • docker logs -f -t --tail 2 容器ID
    • -t 加入时间戳
    • -f 跟随最新的日志打印
    • –tail 数字 显示最后多少条
  • docker top xxx 容器ID 查看容器进程
  • docker inspect 容器ID 查看容器内部细节
  • docker attach 容器ID 进入正在后台运行的容器中
  • docker exec -t 容器ID ls -l /tmp 在宿主机执行容器内的命令(不需要进入容器)
[root@aliyun-hades /]# docker exec -t 02e4d5235ce3 ls -l /tmp
total 8
-rwx------ 1 root root 701 Dec  4 17:37 ks-script-esd4my7v
-rwx------ 1 root root 671 Dec  4 17:37 ks-script-eusq_sc5

  • docker cp 容器ID:容器目录文件 /宿主机目录
[root@aliyun-hades /]# docker cp  02e4d5235ce3:/tmp/hades.log /root/
  • docker exec -it 容器ID /bin/bash 进入到容器目录
[root@aliyun-hades ~]# clear
[root@aliyun-hades ~]# docker ps 
CONTAINER ID   IMAGE     COMMAND             CREATED         STATUS         PORTS                    NAMES
88f65248ae64   tomcat    "catalina.sh run"   4 minutes ago   Up 4 minutes   0.0.0.0:8888->8080/tcp   sleepy_antonelli
[root@aliyun-hades ~]# docker exec -it 88f65248ae64 /bin/bash
root@88f65248ae64:/usr/local/tomcat# ls -l
total 156
-rw-r--r-- 1 root root 18982 Dec  3 11:48 BUILDING.txt
-rw-r--r-- 1 root root  5409 Dec  3 11:48 CONTRIBUTING.md
-rw-r--r-- 1 root root 57092 Dec  3 11:48 LICENSE
-rw-r--r-- 1 root root  2333 Dec  3 11:48 NOTICE
-rw-r--r-- 1 root root  3257 Dec  3 11:48 README.md
-rw-r--r-- 1 root root  6898 Dec  3 11:48 RELEASE-NOTES
-rw-r--r-- 1 root root 16507 Dec  3 11:48 RUNNING.txt
drwxr-xr-x 2 root root  4096 Jan 13 08:25 bin
drwxr-xr-x 1 root root  4096 Mar  1 07:23 conf
drwxr-xr-x 2 root root  4096 Jan 13 08:25 lib
drwxrwxrwx 1 root root  4096 Mar  1 07:23 logs
drwxr-xr-x 2 root root  4096 Jan 13 08:25 native-jni-lib
drwxrwxrwx 2 root root  4096 Jan 13 08:25 temp
drwxr-xr-x 2 root root  4096 Jan 13 08:25 webapps
drwxr-xr-x 7 root root  4096 Dec  3 11:45 webapps.dist
drwxrwxrwx 2 root root  4096 Dec  3 11:43 work
root@88f65248ae64:/usr/local/tomcat# 

  • docker run -it -d -p 8888:8080 tomcat 后台启动tomcat 端口由8080 改成8888
[root@aliyun-hades ~]# docker run -it -d -p 8888:8080 tomcat 
4f9d13a6a886cba125f00502259c45066b38ba88f667900210b2f7b9aed5001e

启动成功之后发现访问tomcat首页 404

  • 查了下相关文档 2020.01.05 后的所有版本tomcat镜像都会有此问题
    于是进入容器内tomcat目录。
[root@aliyun-hades /]# docker ps 
CONTAINER ID   IMAGE     COMMAND             CREATED          STATUS          PORTS                    NAMES
6ba1e2330a71   tomcat    "catalina.sh run"   25 seconds ago   Up 19 seconds   0.0.0.0:8080->8080/tcp   magical_hamilton
[root@aliyun-hades /]# docker exec -it 6ba1e2330a71 /bin/bash
root@6ba1e2330a71:/usr/local/tomcat# ls -l 
total 156
-rw-r--r-- 1 root root 18982 Dec  3 11:48 BUILDING.txt
-rw-r--r-- 1 root root  5409 Dec  3 11:48 CONTRIBUTING.md
-rw-r--r-- 1 root root 57092 Dec  3 11:48 LICENSE
-rw-r--r-- 1 root root  2333 Dec  3 11:48 NOTICE
-rw-r--r-- 1 root root  3257 Dec  3 11:48 README.md
-rw-r--r-- 1 root root  6898 Dec  3 11:48 RELEASE-NOTES
-rw-r--r-- 1 root root 16507 Dec  3 11:48 RUNNING.txt
drwxr-xr-x 2 root root  4096 Jan 13 08:25 bin
drwxr-xr-x 1 root root  4096 Mar  1 07:35 conf
drwxr-xr-x 2 root root  4096 Jan 13 08:25 lib
drwxrwxrwx 1 root root  4096 Mar  1 07:35 logs
drwxr-xr-x 2 root root  4096 Jan 13 08:25 native-jni-lib
drwxrwxrwx 2 root root  4096 Jan 13 08:25 temp
drwxr-xr-x 2 root root  4096 Jan 13 08:25 webapps
drwxr-xr-x 7 root root  4096 Dec  3 11:45 webapps.dist
drwxrwxrwx 2 root root  4096 Dec  3 11:43 work

发现webapps目录下是空的,把webapps.dist 改成webapps,然后重新访问。
在这里插入图片描述
搞定!!

  • docker commit -m=“提交描述信息” -a=“作者” 容器ID 要创建的目标容器名称:标签名
[root@aliyun-hades /]# docker commit -m="hades tomcat" -a="hades" 6ba1e2330a71 hades-tomcat:1.2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker基本命令使用——(1) 的相关文章

随机推荐

  • 程序员的自我修养--链接、装载与库笔记:Linux共享库的组织

    共享库 Shared Library 概念 其实从文件结构上来讲 共享库和共享对象没什么区别 Linux下的共享库就是普通的ELF共享对象 由于共享对象可以被各个程序之间共享 所以它也就成为了库的很好的存在形式 很多库的开发者都以共享对象的
  • tensorflow学习笔记二:入门基础

    基本概念 使用TensorFlow前必须明白的基本概念 图 Graph 图描述了计算的过程 TensorFlow使用图来表示计算任务 张量 Tensor TensorFlow使用tensor表示数据 每个Tensor是一个类型化的多维数组
  • java---日期类汇总

    java中常用的日期类有Date SimpleDateFormat Calendar这三种 现在分别对三个类的日常使用进行大概的总结 1 Date类 1 1 基本介绍 一般常用的事Java util Date包下的Date类 在java s
  • 11月7日 Unreal Engine Rider 学习笔记

    创建蓝图接口 添加蓝图Class 添加接口用指针 添加宝箱Actor类 添加Mesh类 首先在类后面添加一个公用接口声明 class ACTIONROUGELIKE API AASItemChest public AActor public
  • 华为OD机试 - 食堂供餐(Java)

    题目描述 某公司员工食堂以盒饭方式供餐 为将员工取餐排队时间降低为0 食堂的供餐速度必须要足够快 现在需要根据以往员工取餐的统计信息 计算出一个刚好能达成排队时间为0的最低供餐速度 即 食堂在每个单位时间内必须至少做出多少价盒饭才能满足要求
  • httpclient下载文件

    private static CloseableHttpClient client static PoolingHttpClientConnectionManager connectionManager new PoolingHttpCli
  • 抓httpclient发送的http请求包

    1 使用fiddler或者Charles抓不到httpclient发送的http请求包 2 需要使用以下代码 HttpHost proxy new HttpHost 127 0 0 1 8888 http 127 0 0 1 8888地址为
  • 大数据:HDFS的Shell常用命令操作

    文章目录 一 HDFS的Shell介绍 二 HDFS常用命令操作 01 创建目录 1 创建单层目录 3 创建多层目录 02 查看目录 03 上传本地文件到HDFS 04 查看文件内容 05 下载HDFS文件到本地 06 删除HDFS文件 0
  • char、varchar、nchar、nvarchar的区别

    对于程序中的string型字段 SQLServer中有char varchar nchar nvarchar四种类型来对应 暂时不考虑text和ntext 开建立数据库中 对这四种类型往往比较模糊 这里做一下对比 定长或变长 所谓定长就是长
  • 阿里巴巴面试总结:测试工程师

    阿里巴巴的面试是网上预约的时间 武汉一共有两天 五号和六号 原先是担心自己准备的不够充分 就把时间往后面移 最后定的是六号的下午四点半到六点的场 基本也就是武汉的最后一场 后来才发现 武汉可以说的上是全国比较晚面试的了 而今年马云又放出了风
  • 自然语言处理面试34题:NLP面试考点,精准详尽解析

    篇幅有限 本文不会把每一题的参考答案都加载出来 会摘出一些摘要 完整解析见题库 添加老师微信 julyedukefu14 回复 6 领取最新升级版 名企AI面试100题 电子书 1 了解Google最新的模型bert么 Google AI
  • 天空图立方体贴图转化为辐照度立方体贴图

    创建立方体贴图 注意 立方体贴图的大小决定被转化的辐照度贴图的精度 irradianceCubeMap new CubeMap 32 调用 CubeMap CubeMap int CubeSize CubeSize CubeSize ini
  • 一文带你读懂聚类

    1 聚类思想 作为无监督学习的一个重要方法 聚类是将样本集D划分为若干互不相交的子集 即样本簇 聚类的思想就是把属性相似的样本归到一类 对于每一个数据点 我们可以把它归到一个特定的类 同时每个类之间的所有数据点在某种程度上有着共性 比如空间
  • 写给程序员的机器学习入门 (四) - 训练过程中常用的技巧

    人工智能学习离不开实践的验证 推荐大家可以多在FlyAI AI竞赛服务平台多参加训练和竞赛 以此来提升自己的能力 FlyAI是为AI开发者提供数据竞赛并支持GPU离线训练的一站式服务平台 每周免费提供项目开源算法样例 支持算法能力变现以及快
  • python手机端下载-Python3,x:如何进行手机APP的数据爬取

    Python3 x 如何进行手机APP的数据爬取 一 简介 平时我们的爬虫多是针对网页的 但是随着手机端APP应用数量的增多 相应的爬取需求也就越来越多 因此手机端APP的数据爬取对于一名爬虫工程师来说是一项必备的技能 我们知道 网页爬取的
  • SQLI-LABS Less-17

    Update 数据库更新注入 具体情况 具体分析 函数 check input 对 uname 进行检查 从 uname 处是无法注入了 而对 passwd 进行了更新 可以利用这个 updata 进行注入 注意 这里必须的 uname 必
  • 因为计算机中丢失VCRUNTIME140怎么办?为什么会丢失VCRUNTIME140.dll

    vcruntime140 dll是一个Windows动态链接库 其主要功能是为C C 编译的程序提供运行时支持 这个库在Microsoft Visual Studio 2015中被引入 其名称中的 140 代表版本号 在我们打开运行软件或者
  • MySQL的索引类型和实现原理

    一 按表列属性分类 1 单列索引 以表的单个列字段创建的索引 2 联合索引 以表的多个列字段组合创建的索引 在查询条件使用索引的从左字段顺序才会生效 遵循最左匹配原则 单列索引和联合索引又包括 普通索引 非主键 非唯一列的索引 主键索引 基
  • 计蒜客T1115——字符串判等

    水题不解释 考研复习压力偶尔写一道换换心情还不错 这里有一个比较有趣的知识点 对于同时输入多个字符串时还要允许空格的输入 那么普通的cin函数就不能满足要求了 这里采用getline函数解决 如下 string s1 s2 getline
  • Docker基本命令使用——(1)

    Docker常用命令 docker images 列出本地主机上的镜像 a 列出本地所有的镜像 含中间映像层 q 只显示镜像ID digests 显示镜像的摘要信息 no trunc 显示完整的镜像信息 docker search xxx