文档章节

docker命令学习记录

一缕清风
 一缕清风
发布于 10/13 00:45
字数 1113
阅读 9
收藏 0

一.帮助命令

docker version
docker info
docker --help

二.镜像命令

1.列出本地主机上的镜像

docker images

OPTIONS说明: 
-a :列出本地所有的镜像(含中间映像层)
-q :只显示镜像ID
--digests :显示镜像的摘要信息
--no-trunc :显示完整的镜像信息

2.查找镜像(https://hub.docker.com)

docker search [OPTIONS] 镜像名字

OPTIONS说明:
--no-trunc : 显示完整的镜像描述
-s : 列出收藏数不小于指定值的镜像
--automated : 只列出 automated build类型的镜像

3.下载镜像

docker pull 镜像名字[:TAG]

4.删除镜像

删除单个

docker rmi -f 镜像ID

删除多个

docker rmi -f 镜像名1:TAG 镜像名2:TAG

删除全部

docker rmi -f $(docker images -qa)

5.TODO

三.容器命令

有镜像才能创建容器(下载一个CentOS镜像演示)

docker pull centos

1.新建并启动容器

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

 OPTIONS说明(常用):有些是一个减号,有些是两个减号
 -i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;

docker run -it centos

--name="容器新名字": 为容器指定一个名称;

docker run -it --name mycentos centos

-d: 后台运行容器,并返回容器ID,也即启动守护式容器;

docker run -d 容器名

问题:然后docker ps -a 进行查看, 会发现容器已经退出
很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程.
容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。
 这个是docker的机制问题,比如你的web容器,我们以nginx为例,正常情况下,我们配置启动服务只需要启动响应的service即可。例如
service nginx start
但是,这样做,nginx为后台进程模式运行,就导致docker前台没有运行的应用,
这样的容器后台启动后,会立即自杀因为他觉得他没事可做了.
所以,最佳的解决方案是,将你要运行的程序以前台进程的形式运行
 

-P: 随机端口映射;
-p: 指定端口映射,有以下四种格式
      ip:hostPort:containerPort
      ip::containerPort
      hostPort:containerPort
      containerPort

2.列出容器

docker ps [OPTIONS]

列出当前所有正在运行的容器

docker ps

OPTIONS说明(常用):
 -a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器编号。
--no-trunc :不截断输出。
3.退出容器

exit 容器停止并退出(关机)

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 logs -f -t --tail 容器ID

-t 是加入时间戳

-f 跟随最新的日志打印

--tail 数字 显示最后多少条

10.查看容器内运行的进程

docker top 容器ID

11.查看容器内部细节

docker inspect 容器ID

12.进入正在运行的容器并以命令行交互

docker attach 容器ID
docker exec -it 容器ID bashShell

attach 直接进入容器启动命令的终端,不会启动新的进程

exec 是在容器中打开新的终端,并且可以启动新的进程

exec更强大,可以做attach做的事情。

docker exec -it b6a7d03b7974 /bin/bash

13.从容器内拷贝文件到主机上

docker cp  容器ID:容器内路径 目的主机路径

14.将容器状态提交为镜像

docker commit -m=“提交的描述信息” -a=“作者” 容器ID 要创建的目标镜像名:[标签名]

 

© 著作权归作者所有

共有 人打赏支持
一缕清风
粉丝 5
博文 127
码字总数 3128
作品 0
东城
容器Docker学习系列五~命令学习history,save, import

随着我们几篇文章Docker的命令学习,关于Docker本地镜像管理的命令学习已经接近尾声。今天我们就学习下本地镜像管理的最后三个命令history,save, import。当然前面命令没有掌握熟练的同学可以...

LuckQI
08/19
0
0
SpringCloud 微服务 (十七) 容器部署 Docker

壹 从第一篇Spring Cloud预备学习到现在,基本组件学习也接近尾声,最后完成的项目,就可以部署 关于部署,会结合docker容器进行,在学习Spring Cloud的同时,也粗略学习了docker的知识,也推荐大家...

___大侠
07/22
0
0
云主机安装Docker-CE的经验总结

最近在研究docker容器,在此记录一下docker安装过程及遇到的问题,本人新手,不喜勿喷。 主机环境:腾讯云主机-centos7.2 64位 内核版本:3.10 参考教程:https://legacy.gitbook.com/book/y...

qq_35918388
04/11
0
0
Docker Mac (二) mysql

下载镜像 既然有了docker,就一步步学习docker的容器技术,也方便开发,不用外部安装一坨又大又跑不动的软件 刚刚起步docker,遇到到很多的坑,还是决定记录一下,转个身就忘了 此次的系统是Mac, ...

___大侠
07/13
0
0
使用Vagrant 在Virtual Box 上安装Docker--(补充九步构建自己的hello world Docker镜像)

反思+记录 安装Virtual Box Virtual Box 是和vmware, Hyper-v 一样的虚拟软件。 Virtual Box 下载地址 https://www.virtualbox.org/wiki/Downloads ;因在Windows,故选择Windows hosts 下载......

上官瑾文
05/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

jenkins+docker+nodejs项目的自动部署环境

1、服务器安装docker yum install docker 2、jenkins安装 //创建jenkins工作目录mkdir -p /var/www/jenkins///拉取docker jenkins镜像docker pull jenkins //设置目前权限(必须...

西园里的猫
32分钟前
2
0
 索引和锁底层原理 !

索引和锁底层原理 ! 一、索引 在之前,我对索引有以下的认知: 索引可以加快数据库的检索速度; 表经常进行INSERT/UPDATE/DELETE操作就不要建立索引了,换言之:索引会降低插入、删除、修改...

DemonsI
41分钟前
3
0
转载:Java实现的SFTP

JSch - Java实现的SFTP(文件上传详解篇):https://www.cnblogs.com/longyg/archive/2012/06/25/2556576.html JSch - Java实现的SFTP(文件下载详解篇):https://www.cnblogs.com/longyg/......

WJtiny
44分钟前
2
0
聊聊storm的AssignmentDistributionService

序 本文主要研究一下storm的AssignmentDistributionService AssignmentDistributionService storm-2.0.0/storm-server/src/main/java/org/apache/storm/nimbus/AssignmentDistributionServic......

go4it
45分钟前
3
0
完全跨域的单点登录(SSO)解决方案源码解析

本文介绍的是一种PHP的开源SSO解决方案,可完全跨域,实现较简洁,源码地址:https://github.com/legalthings/sso 实现原理 一共分为3个角色: Client - 用户的浏览器 Broker - 用户访问的网...

庞陆阳
45分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部