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

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和容器开机自启的命令:

shell 复制代码
# Docker开机自启
systemctl enable docker

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

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

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

    打开dockerhub网站dockerhub

    搜索nginx

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

  2. 拉取Nginx镜像

    shell 复制代码
    docker pull nginx

    拉取成功界面:

  3. 查看本地镜像列表

    输入如下命令:

    shell 复制代码
    docker images

    从而证明拉取成功了。

  4. 创建并运行Nginx容器

    输入如下命令:

    shell 复制代码
    docker run -d --name nginx -p 80:80 nginx
  5. 查看容器

    shell 复制代码
    docker ps

    对输出内容作格式化:

    shell 复制代码
    docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"
  6. 停止容器

    shell 复制代码
    docker stop nginx

    再次查看容器

    shell 复制代码
    docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"

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

    shell 复制代码
    # 查看所有的容器需要添加-a参数
    docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}" -a
  7. 再次启动容器

    shell 复制代码
    docker start nginx
  8. 查看日志

    shell 复制代码
    docker logs nginx
    # 或者加上-f参数 一直查看日志,不停
    docker logs -f nginx
  9. 查看容器详细信息

    shell 复制代码
    docker inspect nginx
  10. 进入Nginx容器

    shell 复制代码
    docker exec -it nginx bash
    # -it参数 表示 可交互的终端
    # bash表示使用命令行进行交互
  11. 退出容器

    shell 复制代码
    exit
  12. 删除容器

    shell 复制代码
    docker rm nginx

    发现无法删除;

    有两种解决方案:

    • 停掉容器再删除

      shell 复制代码
      docker stop nginx
      docker rm nginx
    • 强制删除

      shell 复制代码
      docker rm nginx -f

命令别名

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

修改bashrc文件

shell 复制代码
# 修改/root/.bashrc文件
vi /root/.bashrc

原始内容如下:

内容如下:

shell 复制代码
# .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

使其生效

shell 复制代码
source /root/.bashrc

查看命令别名:

shell 复制代码
dps
相关推荐
AAA@峥10 小时前
容器数据不丢失:Docker 分层存储 + Volume 共享、备份迁移完整指南
运维·docker·容器
十年磨一剑~12 小时前
docker 为何每次 docker tag才能 docker push
docker·容器·eureka
梦梦代码精13 小时前
LikeShop 前后端架构升级对比总白皮书——从传统商城架构到高性能多端统一体系
docker·架构·开源
Z_W_H_14 小时前
minikube start --driver=docker --memory=4000mb出现PROVIDER_DOCKER_NEWGRP
java·docker·minikube
江湖有缘15 小时前
基于Docker环境部署tillywork开源工作管理工具
docker·容器·开源
辉的技术笔记16 小时前
Dify 配完了怎么知道对不对?5 个关键指标 + 诊断命令
docker
鸿儒51717 小时前
MR-50国产化GPU docker配置方法
docker·容器·mr
梦想的颜色1 天前
【Docker部署插件】:使用 Docker 部署生产级 Kafka 完整版教程
安全·docker·中间件·kafka·消息队列·docker-compose·后端开发
↘"LYong1 天前
旧版 CentOS 安装 Docker 完整指南(附国内镜像加速)
linux·运维·docker
满意的星月1 天前
基于微服务和Docker容器技术的PaaS云平台架构设计(微服务架构实施原理)
docker·微服务·架构