Docker使用命令和技巧

既然已经搭建好了Docker关于基础的命令以及使用方式我们当然要进行学习,还有一些小技巧比如批量操作镜像加速和怎么寻找合适的Docker-Images都是本节的内容

附上:

喵了个咪的博客:w-blog.cn

官方Git地址:https://github.com/moby/moby

1.Docker基本操作命令

docker容器生命周期管理

  • docker run 在一个新的容器执行一个命令
  • docker start 开一个或者更多已经停止的容器
  • docker stop 停止一个运行的容器
  • docker restart 重新开始一个运行的容器
  • docker kill 杀死一个运行的容器
  • docker rm 删除一个或更多的容器
  • docker pause 暂停一个容器的所有进程
  • docker unpaunse 恢复一个容器的所有进程

docker容器操作运维

  • docker ps 列出容器
  • docker inspect 列出关于容器或镜像的底层信息
  • docker top 显示一个容器运行的进程
  • docker attach 附上一个运行的容器
  • docker events 得到实时的来自服务的事件
  • docker log 获得一个容器的日志
  • docker wait 阻塞直到一个容器停止,然后打印它的退出代码
  • docker export 导出一个容器的文件系统作为一个tar文件
  • docker port 列出容器映射的端口

docker版本管理

  • docker commit 创建一个新的镜像从一个容器
  • docker cp 从容器复制一个文件或目录到本地目录或标准输出
  • docker diff 展示一个容器文件系统的变化

docker镜像仓库

  • docker login 登入仓库
  • docker pull 拉取镜像
  • docker push 推送镜像
  • docker search 搜索镜像

docker本地镜像管理

  • docker images 列出本地的镜像
  • docker rmi 删除本地的镜像
  • docker tag 打标签本地的镜像
  • docker build 通过Dockerfile构建本地的镜像
  • docker histroy 列出镜像的历史
  • docker save 保存本地的镜像为一个tar文件
  • docker import 通过tar导入镜像
  • docker load 加载tar镜像

docker其它命令

  • docker info
  • docker version

2. 小技巧

批量操作

很多时候发现可能需要清理Docker环境,但是容器挨个停止挨个删除确实太过于麻烦了,使用如下命令可以做到很快速的处理批量删除

> docker ps // 查看所有正在运行容器
> docker stop containerId // containerId 是容器的ID
> docker ps -a // 查看所有容器
> docker ps -a -q // 查看所有容器ID
> docker stop $(docker ps -a -q) //  stop停止所有容器
> docker rm $(docker ps -a -q) //   remove删除所有容器
> docker rmi $(docker images -a -q) //   删除所有的镜像

hub.docker

既然使用了docker,就会大量的使用别人提起处理好的环境常常我们去https://hub.docker.com/ 中寻找我们需要的镜像

搜索你需要的镜像

默认docker在拉取镜像的时候就会从hub.docker中拉取,使用如下命令就可以拉取上面第一个镜像

docker pull richarvey/nginx-php-fpm

国内镜像仓库和镜像源

国内镜像仓库可以申请一个阿里云账号直接使用它的免费Docker仓库

对应的Docker源地址需要大家去阿里云容器镜像管理中申请,获取使用其他国内Docker源(如果不配置在后续的K8S安装非常慢)

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}
EOF

# 重启
sudo systemctl daemon-reload
sudo systemctl restart docker

注:笔者能力有限有说的不对的地方希望大家能够指出,也希望多多交流!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏简单聊聊Spark

搭建CM(ClouderaManager)

首先,为什么要搭建本地yum源呢?大部分公司里面,由于内网机不允许连接外网,所有导致不能通过网络的方式安装软件,而本地yarn源就是为了解决这个问题而诞生的一种...

591
来自专栏酷玩时刻

基于 CentOS 搭建 FTP 文件服务

此时,访问 ftp://192.168.1.170 可浏览机器上的 /var/ftp目录了。

1863
来自专栏pangguoming

CentOS 7 开放防火墙端口命令

CentOS 7 开放防火墙端口 命令         最近公司新的server要求用CentOS7, 发现以前CentOS 6 系列中的 iptables 相...

54013
来自专栏木子昭的博客

将Django部署到Centos7全攻略

Django部署到Cenos7需要安装大量的依赖包, 有很多坑需要踩, 这里是踩坑后探索出的标准化步骤

1265
来自专栏北京马哥教育

Linux基础之软件包管理

概述 在redhat系列的发行版中,采用rpm软件包管理器,rpm原名是Red Hat Package Manager,后来当其他发行版也采用这种软件包管理机制...

3387
来自专栏一个爱瞎折腾的程序猿

在 ubuntu 中愉快的安装 Jenkins

第一次安装的可以稍微看下jenkins 的安装文档 总之,如果没有安装 Java 需要安装一下。

581
来自专栏图像识别与深度学习

2018-03-24python3.6.2 Tensorflow环境配置(win10 64位)

1507
来自专栏Angular&服务

ionic2 编译打包的坑,

Could not find an installed version of Gradle either in Android Studio, or on y...

843
来自专栏hadoop学习笔记

最新详细hadoop集群操作系统安装教程

虚拟机以及Linux系统安装在之前的两篇分享中已经详细的介绍了方法,并且每一步的都配图了。如果有朋友还是看不懂,那我也爱莫能助了。本篇主要就hadoop服务器操...

992
来自专栏Hadoop实操

如何将Kerberos环境下CDH集群JAVA升级至JDK8

大家都知道在安装CDH时默认安装的JDK版本为jdk1.7.0_67,部分企业开发环境为JDK8版本,这个时候可能会出现在本地开发的应用在集群中无法正常运行。前...

4255

扫码关注云+社区