docker入门加实战—docker常见命令

在介绍命令之前,先用一副图形象的展示一下docker的命令:

常见命令

docker的常见命令和文档地址如下表:

命令 说明 文档地址
docker pull 拉取镜像 docker pull
docker push 推送镜像到DockerRegistry docker push
docker images 查看本地镜像 docker images
docker rmi 删除本地镜像 docker rmi
docker run 创建并运行容器(不能重复创建) docker run
docker stop 停止指定容器 docker stop
docker start 启动指定容器 docker start
docker restart 重新启动容器 docker restart
docker rm 删除指定容器 docs.docker.com
docker ps 查看容器 docker ps
docker logs 查看容器运行日志 docker logs
docker exec 进入容器 docker exec
docker save 保存镜像到本地压缩文件 docker save
docker load 加载本地压缩文件到镜像 docker load
docker inspect 查看容器详细信息 docker inspect

常见命令演示

在演示常见命令时,先介绍一下使得docker和容器开机自启的命令:

# Docker开机自启
systemctl enable docker # Docker容器开机自启
docker update --restart=always [容器名/容器id]

查看DockerHub,拉取Nginx镜像,创建并运行Nginx容器为例,来演示常见命令。

  1. 在DockerHub中搜索Nginx镜像,查看镜像的名称

    打开dockerhub网站dockerhub

    搜索nginx

    在这里便能看到拉取镜像的命令了:

  2. 拉取Nginx镜像

    docker pull nginx

    拉取成功界面:

  3. 查看本地镜像列表

    输入如下命令:

    docker images

    从而证明拉取成功了。

  4. 创建并运行Nginx容器

    输入如下命令:

    docker run -d --name nginx -p 80:80 nginx

  5. 查看容器

    docker ps

    对输出内容作格式化:

    docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"

  6. 停止容器

    docker stop nginx

    再次查看容器

    docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"

    可以发现nginx容器已经停掉了。

    # 查看所有的容器需要添加-a参数
    docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}" -a

  7. 再次启动容器

    docker start nginx

  8. 查看日志

    docker logs nginx
    # 或者加上-f参数 一直查看日志,不停
    docker logs -f nginx

  9. 查看容器详细信息

    docker inspect nginx

  10. 进入Nginx容器

    docker exec -it nginx bash
    # -it参数 表示 可交互的终端
    # bash表示使用命令行进行交互

  11. 退出容器

    exit

  12. 删除容器

    docker rm nginx

    发现无法删除;

    有两种解决方案:

    • 停掉容器再删除

      docker stop nginx
      docker rm nginx
    • 强制删除

      docker rm nginx -f

命令别名

我们发现docker ps命令输出内容比较多,我们需要使用format来格式化输出,但是这条命令比较长,我们可以给他起个别名:

修改bashrc文件

# 修改/root/.bashrc文件
vi /root/.bashrc

原始内容如下:

内容如下:

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias dps='docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"'
alias dis='docker images' # Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

使其生效

source /root/.bashrc

查看命令别名:

dps

docker入门加实战—docker常见命令的更多相关文章

  1. Docker入门教程(二)命令

    Docker入门教程(二)命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第二篇,介绍了Docker的基本命令以及命令的用法和功能. 在Docker ...

  2. docker入门_image、container相关命令

    docker入门_image.container相关命令 镜像仓库服务.镜像仓库.镜像相关概念 镜像仓库服务:docker镜像仓库服务.阿里云镜像服务 镜像仓库:docker镜像仓库服务中会有很多仓库 ...

  3. SpringBoot Docker入门,SpringBoot Docker安装

    SpringBoot Docker入门,SpringBoot Docker安装 ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...

  4. Docker小白到实战之常用命令演示,通俗易懂

    前言 上一篇大概认识了Docker,主要是从概念.架构.优点及流程方面进行阐述,并进行安装和体验: 接下来就开始进行实操学习,在演示过程中会针对关键的知识点进行归纳和总结,这里先从常用命令说起,来吧, ...

  5. docker 保存,加载,导入,导出 命令

    持久化docker的镜像或容器的方法 docker的镜像和容器可以有两种方式来导出 docker save #ID or #Name docker export #ID or #Name docker ...

  6. Docker入门与实战讲解

    转载自:http://blog.csdn.net/relax_hb/article/details/69668815 简述 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包 ...

  7. Docker入门到实战

    1.系统要求 Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10. CentOS 7满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存 ...

  8. Docker入门之安装Docker

    目录 目录 1 1. 前言 1 2. 创建网桥 2 3. 安装Docker 2 3.1. 二进制安装 3 3.1.1. 下载安装 3 3.1.2. 配置服务 3 3.1.3. 启动服务 4 3.2. ...

  9. Docker 入门及安装[Docker 系列-1]

    docker 如日中天,这不是单纯的炒概念,docker 确确实实解决了开发与运维的痛点,因此在企业开发中得到了非常广泛的使用,本文对于 docker 的这些基本知识点再做一些简单回顾. 什么是 do ...

  10. 【docker 入门 - 01】- Docker 在 Centos7 上安装与测试

    一.学习文档 官网网站: https://www.docker.com 中文网站:http://www.docker-cn.com 官方安装文档:https://docs.docker.com/ins ...

随机推荐

  1. 【python基础】文件-初识文件

    文本文件可存储的数据量是非常多的.每当需要分析或修改存储在文件中的信息时,首先就是读取文件到内存中,为此可以一次性读取文件的全部内容,也可以以每次一行的方式逐步读取. 1.读取文件 1.1读取整个文件 ...

  2. 自然语言处理 Paddle NLP - 检索式文本问答-理论

    问答系统(Question Answering System,QA) 是信息检索系统的一种高级形式,它能用准确.简洁的自然语言回答用户用自然语言提出的问题.其研究兴起的主要原因是人们对快速.准确地获取 ...

  3. 理解ASP.NET Core - 限流(Rate Limiting)

    注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 概述 在微服务化的架构设计中,网关扮演着重要的看门人角色,它所提供的功能之一就是限流.而对于众 ...

  4. Django-4.2博客开发教程:需求分析并确定数据表(四)

    前三步已经完成了一个初步流程,从创建项目>应用>数据迁移>访问首页.以下是我整理的基本流程,接下来一步一步完成整个项目. 1.我们的需求: 博客的功能主要分为:网站首页.文章分类.文 ...

  5. 记一次 zabbix item became not supported 问题处理

    现象 配置了一个自定义监控项,超过 5m nodata 就会告警,最近触发了两次.通过日志查看,有一对相隔10分钟的告警: 时间t0: item xxx became not support: Tim ...

  6. sqli笔记

    MySQL数据库自带的数据库information_schema 里面有三个比较重要的表  SCHEMATA .TABLES . COLUMNS  保存数据库所有的数据库名 表名  字段名 SCHEM ...

  7. 【入门教程】3202年了,还有人没用stable diffusion画过自己的AI小姐姐吗。

    个人绘画作品: 说明 本文主要是讲一下如何安装.使用整合包,以及介绍画真人图片的大模型(介绍的整合包只提供二次元模型,个人不太感兴趣) 通过最简单的介绍帮助大家快速入门,开始画图,不会深入的进行讲解, ...

  8. 二代水务系统架构设计分享——DDD+个性化

    系统要求 C/S架构的单体桌面应用,可以满足客户个性化需求,易于升级和维护.相比于一代Winform,界面要求美观,控件丰富可定制. 解决方案 依托.Net6开发平台,采用模块化思想设计(即分而治之的 ...

  9. 基于CUBEMX的STM32F4 Hal库,配置LVGL(无操作系统版)

    本篇文章移植思路适用于所有嵌入式MCU,包括Arm,STM32,NXP,乐鑫,Nuvoton,Arduino,RT-Thread,Zephyr,NuttX,Adafruit等等. 为什么要写这一篇移植 ...

  10. Redis系列18:过期数据的删除策略

    Redis系列1:深刻理解高性能Redis的本质 Redis系列2:数据持久化提高可用性 Redis系列3:高可用之主从架构 Redis系列4:高可用之Sentinel(哨兵模式) Redis系列5: ...