专栏首页程序猿 Damon 带你进阶全栈Docker常用命令,你都会了吗

Docker常用命令,你都会了吗

应大家要求,今天整理下 Docker 常见的一些命令。

关于 docker 的安装,在 基础设施服务k8s快速部署之HA篇 一文中,你可以快速安装docker的各种版本。

常见命令:

docker images: 查看镜像,后可跟 "| grep 内容",可根据内容进行筛选。
如:docker images | grep nginx

docker images [OPTIONS] [REPOSITORY[:TAG]]
OPTIONS说明:
-a: 列出本地所有的镜像
--digests: 显示镜像的摘要信息
-f: 显示满足条件的镜像
--format: 指定返回值的模板文件
--no-trunc: 显示完整的镜像信息
-q: 只显示镜像ID

docker run: 创建一个新的容器并运行一个命令
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明:
-d: 后台运行容器,并返回容器ID
-i: 以交互模式运行容器,通常与 -t 同时使用
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用
--name "nginx": 为容器指定一个名称
-h "localhost": 指定容器的hostname
-e spring.profiles.active="dev": 设置环境变量
--env-file=[]: 从指定文件读环境变量
-m :设置容器使用内存最大值
--volume /home/data:/etc/data :  绑定一个卷
and so on

如:docker run -d -t -p 80:80 -v /home/data:/usr/data --name nginx nginx:latest

docker create: 创建一个新的容器但不启动它

docker stop: 停止一个运行的容器
docker stop containerName

docker restart: 重启一个容器
docker restart containerName

docker start: 启动一个被停止的容器
docker start containerName

docker ps [OPTIONS]: 列出容器
OPTIONS说明:
-a: 显示所有的容器,包括未运行的
-f: 根据条件过滤显示的内容
--format: 指定返回值的模板文件
-l: 显示最近创建的容器
-n: 列出最近创建的n个容器
--no-trunc: 不截断输出
-q: 静默模式,只显示容器编号
-s: 显示总的文件大小

docker ps -a: 查看所有容器

docker ps: 查看正在运行的容器

docker exec: 进入一个运行中的容器执行命令
如:docker exec -it 容器id sh or bash or /bin/bash
表示在容器中开启一个交互模式的终端

docker rm: 删除一个容器,可加-f 表示强制 -v:并删除挂载卷
删除所有停止的容器:docker rm $(docker ps -a -q)

docker rmi: 删除一个镜像,可加-f 表示强制

docker inspect : 获取容器/镜像的元数据
如:docker inspect [OPTIONS] NAME|ID [NAME|ID...]
OPTIONS说明:
-f: 指定返回值的模板文件
-s: 显示总文件大小
-type: 为指定类型返回json数据

获取正在运行的容器 nginx 的 IP:
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' nginx

docker kill: 杀死一个运行中的容器
如: docker kill -s killyou nginx

docker logs: 获取容器的日志
如:docker logs -f -t 容器id or docker logs -f -t --tail=100 容器id

docker build: 命令用于使用 Dockerfile 创建镜像
docker build [OPTIONS] PATH | URL | -
OPTIONS说明:
-f: 指定要使用的Dockerfile路径
-m: 设置内存最大值
--memory-swap: 设置Swap的最大值为内存+swap,"-1"表示不限swap
--no-cache: 创建镜像的过程不使用缓存
--pull: 尝试去更新镜像的新版本
-q: 安静模式,成功后只输出镜像 ID
--rm: 设置镜像成功后删除中间容器
--shm-size: 设置/dev/shm的大小,默认值是64M
--tag: 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签
--network: 默认 default。在构建期间设置RUN指令的网络模式

docker build -t 镜像标签名 .: docker build -t nginx:latest .
docker build -f /path/to/a/Dockerfile .

docker tag: 标记本地镜像,将其归入某一仓库

docker tag nginx nginx:old

docker save: 将指定镜像保存成 tar 归档文件
docker save -o nginx.tar nginx:latest

docker load: 导入使用 docker save 命令导出的镜像
docker load -i tar文件名

docker info: 查看docker环境信息

docker version: 查看docker版本信息

docker login: 登录一个Docker镜像仓库
docker login -u 用户名 -p 密码

docker logout: 退出登录

docker pull: 拉取或者更新指定镜像 -a 拉取所有的tag的镜像

docker push: 将本地的镜像上传到镜像仓库

本文分享自微信公众号 - 程序猿Damon(Damon4X),作者:小码哥Damon

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何利用k8s拉取私有仓库镜像

    最近实战时,发现一个很奇怪的问题,在通过 k8s 创建 pod,拉取镜像时,总是显示如下信息:

    程序猿Damon
  • Oauth2的授权码模式《上》

    在上一篇 Oauth2 的认证实战-HA 篇 中,我们说过 Oauth2 的高可用方案,但其实其场景仅仅在于密码模式下,如果是授权码模式下,将有点瑕疵,甚至需要...

    程序猿Damon
  • 基础设施服务k8s快速部署之HA篇

    实战部署 Kubernetes,助力应用开发人员升级成为 DevOps。成就你全栈工程师之路,让你的薪资倍增。

    程序猿Damon
  • docker之什么是docker?

    docker是一个开源的应用容器引擎,基于Go语言,并遵从Apache2.0协议开源。docker可以让开发者打包它们的应用以及依赖包到一个轻量级,可移植的容器...

    绝命生
  • 『中级篇』docker企业版本地安装之UCP(57)

    PS:详细不介绍,就是一个图形化的,没啥介绍的。下次在阿里平台是建立下用云端玩玩。

    IT故事会
  • 虚拟化docker的成长之路

    首先修改这个文件,在里面加上启动nginx的命令,比如 /usr/local/sbin/nginx

    思梦php
  • Docker – 清理磁盘占用

    最近,我们开始对一些应用进行 docker 化,不得不说,我已经爱上 Docker 了!这是一个非常棒的工程,在 AWS EC2 上,它让我们的生活变得更加轻松...

    张张张我是张
  • 会用Docker的人都别装了,这多简单呐

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也...

    震八方紫面昆仑侠
  • Docker 从入门到掉坑

    简单的对docker进行介绍,可以把它理解为一个应用程序执行的容器。但是docker本身和虚拟机还是有较为明显的出入的。我大致归纳了一下,可以总结为以下几点:

    乔戈里
  • 实验环境配置

    版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转...

    耕耘实录

扫码关注云+社区

领取腾讯云代金券