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
相关推荐
功德+n7 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
小敬爱吃饭7 小时前
Ragflow Docker部署及问题解决方案(界面为Welcome to nginx,ragflow上传文件失败,Docker中的ragflow-cpu-1一直重启)
人工智能·python·nginx·docker·语言模型·容器·数据挖掘
木子欢儿8 小时前
Docker Hub 镜像发布指南
java·spring cloud·docker·容器·eureka
coppher9 小时前
Ubuntu 22.04 amd64 离线安装 Docker 完整教程
linux·docker
bloglin9999911 小时前
docker logs 如何一直监听日志输出
运维·docker·容器
说实话起个名字真难啊12 小时前
Docker 入门之网络基础
网络·docker·php
❀͜͡傀儡师12 小时前
使用 Docker 部署 Neko 自托管虚拟浏览器(Firefox)
docker·容器·firefox
0xDevNull13 小时前
Linux Docker 安装与使用详细教程
linux·运维·docker
工具罗某人13 小时前
docker compose 部署MySQL InnoDB Cluster + Router 高可用集群-亲测可用
mysql·docker·容器
SpikeKing13 小时前
Server - 服务器 CentOS 安装与配置 Docker
服务器·docker·centos