docker 使用教程(2)常用命令

1. 查看docker信息(version、info)

# 查看docker版本
$docker version

# 显示docker系统的信息
$docker info

2. 对image的操作(search、pull、images、rmi、history)

# 检索image
$docker search image_name

# 下载image
$docker pull image_name

# 列出镜像列表; -a, --all=false Show all images; --no-trunc=false Don‘t truncate output; -q, --quiet=false Only show numeric IDs
$docker images

# 删除一个或者多个镜像; -f, --force=false Force; --no-prune=false Do not delete untagged parents
$docker rmi image_name

# 显示一个镜像的历史; --no-trunc=false Don‘t truncate output; -q, --quiet=false Only show numeric IDs
$docker history image_name

3. 启动容器(run)

docker容器可以理解为在沙盒中运行的进程。这个沙盒包含了该进程运行所必须的资源,包括文件系统、系统类库、shell 环境等等。但这个沙盒默认是不会运行任何程序的。你需要在沙盒中运行一个进程来启动某一个容器。这个进程是该容器的唯一进程,所以当该进程结束的时候,容器也会完全的停止。

# 在容器中运行"echo"命令,输出"hello word"
$docker run image_name echo "hello word"

# 交互式进入容器中
$docker run -i -t image_name /bin/bash

# 在容器中安装新的程序
$docker run image_name apt-get install -y app_name

Note: 在执行apt-get 命令的时候,要带上-y参数。如果不指定-y参数的话,apt-get命令会进入交互模式,需要用户输入命令来进行确认,但在docker环境中是无法响应这种交互的。apt-get 命令执行完毕之后,容器就会停止,但对容器的改动不会丢失。

4. 查看容器(ps)

# 列出当前所有正在运行的container
$docker ps
# 列出所有的container
$docker ps -a
# 列出最近一次启动的container
$docker ps -l

5. 保存对容器的修改(commit)

当你对某一个容器做了修改之后(通过在容器中运行某一个命令),可以把对容器的修改保存下来,这样下次可以从保存后的最新状态运行该容器。

# 保存对容器的修改; -a, --author="" Author; -m, --message="" Commit message
$docker commit ID new_image_name
Note: image相当于类,container相当于实例,不过可以动态给实例安装新软件,然后把这个container用commit命令固化成一个image。

6. 对容器的操作(rm、stop、start、kill、logs、diff、top、cp、restart、attach)

# 删除所有容器
$docker rm `docker ps -a -q`
$docker rm $(docker ps -a -q)

# 删除单个容器; -f, --force=false; -l, --link=false Remove the specified link and not the underlying container; -v, --volumes=false Remove the volumes associated to the container
$docker rm Name/ID

# 停止、启动、杀死一个容器
$docker stop Name/ID
$docker start Name/ID
$docker kill Name/ID

# 从一个容器中取日志; -f, --follow=false Follow log output; -t, --timestamps=false Show timestamps
$docker logs Name/ID

# 列出一个容器里面被改变的文件或者目录,list列表会显示出三种事件,A 增加的,D 删除的,C 被改变的
$docker diff Name/ID

# 显示一个运行的容器里面的进程信息
$docker top Name/ID

# 从容器里面拷贝文件/目录到本地一个路径
$docker cp Name:/container_path to_path
$docker cp ID:/container_path to_path

# 重启一个正在运行的容器; -t, --time=10 Number of seconds to try to stop for before killing the container, Default=10
$docker restart Name/ID

# 附加到一个运行的容器上面; --no-stdin=false Do not attach stdin; --sig-proxy=true Proxify all received signal to the process
$docker attach ID
Note: attach命令允许你查看或者影响一个运行的容器。你可以在同一时间attach同一个容器。你也可以从一个容器中脱离出来,是从CTRL-C。

7. 保存和加载镜像(save、load)

当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像。

# 保存镜像到一个tar包; -o, --output="" Write to an file
$docker save image_name -o file_path
# 加载一个tar包格式的镜像; -i, --input="" Read from a tar archive file
$docker load -i file_path

# 机器a
$docker save image_name > /home/save.tar
# 使用scp将save.tar拷到机器b上,然后:
$docker load < /home/save.tar

8、 登录registry server(login)

# 登陆registry server; -e, --email="" Email; -p, --password="" Password; -u, --username="" Username
$docker login

9. 发布image(push)

# 发布docker镜像
$docker push new_image_name

10. 根据Dockerfile 构建出一个容器

#build
--no-cache=false Do not use cache when building the image
-q, --quiet=false Suppress the verbose output generated by the containers
--rm=true Remove intermediate containers after a successful build
-t, --tag="" Repository name (and optionally a tag) to be applied to the resulting image in case of success
$docker build -t image_name Dockerfile_path

时间: 2024-10-26 21:16:38

docker 使用教程(2)常用命令的相关文章

Docker 学习 (2): 常用命令

Docker 学习 (2): 常用命令 命令行操作前提: systemctl start docker 启动docker sudo -i 进去root模式 一.帮助命令 docker version 查看对应安装的版本号,可以用来检测docker是否安装c成功 docker info Docker容器安装之后,个人信息的描述,比version更加详细 docker --help docker的帮助命令 二.镜像命令 前提:在操作镜像的时候,如果镜像名称的后面没有加版本号,那默认就是操作的最高的版

docker之容器管理常用命令篇

常用命令如下表: 选项 描述 ls 列出容器 inspect 查看一个或多个容器详细信息 exec 在运行容器中执行命令 commit 创建一个新镜像来自一个容器 cp 拷贝文件/文件夹到一个容器 logs 获取一个容器日志 port 列出或指定容器端口映射 top 显示一个容器运行的进程 stats 显示容器资源使用统计 stop/start 停止/启动一个或多个容器 rm 删除一个或多个容器 1.ls - 列出容器 只列出正在运行的容器:[[email protected] ~]# dock

Docker第二弹之常用命令

Docker的常用命令 底层原理 Docker是如何工作的 Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上, 然后通过Socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器. 容器,是一个运行时环境. 为什么Docker比VM快 (1)docker有着比虚拟机更少的抽象层.由亍docker不需要Hypervisor实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源.因此在CPU.内存利用率上doc

GStreamer基础教程12 - 常用命令工具

摘要 GStreamer提供了不同的命令行工具用于快速的查看信息以及验证Pipeline的是否能够正确运行,在平时的开发过程中,我们也优先使用GStreamer的命令行工具验证,再将Pipeline集成到应用中.本文将介绍gst-inspect-1.0,gst-discoverer-1.0,gst-launch-1.0命令行工具的使用. gst-inspect-1.0 此命令有3种工作模式,实际中我们常用第一种和第三种方式: 一.不带任何参数.这样会列出当前系统中支持的所有Element,这些E

oracle安装教程及常用命令

虽然网上已经有很多安装教程了,但还是写一个记录一下自己的安装过程以及遇到问题的解决办法 1 安装包下载: 去oracle的官网:https://www.oracle.com/index.html  选择DownLoads->database->oracle database: 选择接受 选择Windows 64的下载,选择file1,和file2,注意两个文件都要下载,下载时要求登录,有oracle账户的直接登录,没有注册一个吧,把这两个文件下载下来 下载下来后是两个压缩文件,将两个一起选中解

Docker使用技巧及常用命令

安装docker 检查curl包是否安装? which curl 如果curl没有安装的话,则先更新apt源,并安装curl,如下: apt-get updateapt-get install curlapt-get updatewget -qO- https://get.docker.com/ | sh 设置当前用户为docker用户组,便于解决每次执行docker命令时都需要输入密码. # 添加一个新的docker用户组groupadd docker# 添加当前用户到docker用户组里,注

docker的介绍以及常用命令

一.docker的介绍 1. Docker是什么? Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口. 详情参考:https://baike.baidu.com/item/Docker/13344470?fr=aladdin 2. Docker与vm(虚拟机)的区别 在比较虚拟机和容器时,请考虑此图: 虚拟机图 虚拟机运行来宾操作系统 - 请注意

Ant入门教程之常用命令

一.copy命令 copy主要用来对文件和目录的复制功能.例子如下: 例1. 复制单个文件: <copy file="A.txt" tofile="B.txt"/> 例2. 对文件目录进行复制: <copy todir="dest_dir"> <fileset dir="src_dir"/> </copy> 例3. 将文件复制到另外的目录 <copy file="

Docker之镜像管理常用命令

1.列出当前本地镜像:docker image ls2.查看镜像历史分层:docker history 镜像名:tag3.查看镜像具体详情:docker image inspect 镜像名:tag 可以看到容器配置主机名,工作目录,数据卷,标签等信息.4.docker image pull nginx:1.11 从docker仓库下载nginx:1.11版本镜像5.docker image rm busybox:latest 删除镜像6.docker image tag nginx:latest

docker之容器管理常用命令

docker container top nginx01 查看容器中运行的进程docker container exec -it nginx01 sh 连接到容器内部docker container commit bs busybox:v2 运行的容器bs 增加了内容请 如果想保存,可以用commit 重新生成一个镜像,不过一般不建议这么做 如果要改变镜像可以用dockerfile来改变,以后也会讲dockerfile的使用.docker container cp host_ip.txt bs: