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
相关推荐
ZHOU西口24 分钟前
微服务实战系列之玩转Docker(十八)
分布式·docker·云原生·架构·数据安全·etcd·rbac
川石课堂软件测试6 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
追风林13 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
城南vision15 小时前
Docker学习—Docker核心概念总结
java·学习·docker
wclass-zhengge15 小时前
Docker篇(Docker Compose)
运维·docker·容器
梦魇梦狸º19 小时前
腾讯轻量云服务器docker拉取不到镜像的问题:拉取超时
docker·容器·github
鬼才血脉19 小时前
docker+mysql配置
mysql·adb·docker
詹姆斯爱研究Java19 小时前
Docker 的基本概念和优势
docker
南猿北者21 小时前
docker镜像仓库常用命令
运维·docker·容器
杨浦老苏21 小时前
Docker可视化管理面板DPanel的安装
运维·docker·群晖