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
相关推荐
微信-since8119231 分钟前
[ruby on rails] 安装docker
后端·docker·ruby on rails
吴半杯2 小时前
gateway漏洞(CVE-2022-22947)
docker·kubernetes·gateway
今天我刷leetcode了吗2 小时前
docker 配置同宿主机共同网段的IP 同时通过通网段的另一个电脑实现远程连接docker
tcp/ip·docker·电脑
lwprain3 小时前
常用docker应用部署,wordpress、mysql、tomcat、nginx、redis
mysql·docker·tomcat
Code_Artist4 小时前
使用Portainer来管理并编排Docker容器
docker·云原生·容器
mengao12345 小时前
centos 服务器 docker 使用代理
服务器·docker·centos
Eternal-Student5 小时前
【docker 保存】将Docker镜像保存为一个离线的tar归档文件
运维·docker·容器
不是二师兄的八戒5 小时前
本地 PHP 和 Java 开发环境 Docker 化与配置开机自启
java·docker·php
码农小丘5 小时前
一篇保姆式centos/ubuntu安装docker
运维·docker·容器
Eternal-Student5 小时前
【1.2 Getting Started--->Installation Guide】
docker