Docker
容器使用直接输入docker
命令来查看到Docker
客户端的所有命令选项。
可以通过命令docker command --help
更深入的了解指定的Docker
命令使用方法。
tiger@tiger:~$ docker start --help
Usage: docker start [OPTIONS] CONTAINER [CONTAINER...]
Start one or more stopped containers
Options:
-a, --attach Attach STDOUT/STDERR and forward signals
--detach-keys string Override the key sequence for detaching a container
-i, --interactive Attach container's STDIN
创建与启动容器基本都是使用docker run
命令。基本参数很多,可【参考文档】,无需死记,此处只列出常用的几个
语法
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
选项说明:
TERM:镜像名称
OPTIONS
:参数
-a stdin
: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
-d
: 后台运行容器,并返回容器ID;
-i
: 以交互模式运行容器,通常与-t
同时使用;
-t
: 为容器重新分配一个伪输入终端,通常与-i
同时使用;
示例
tiger@tiger:~$ docker run -i -t ubuntu /bin/bash
root@72a096e777d9:/# ^C
各个选项说明:
-i
: 交互式操作。-t
: 终端。ubuntu
: ubuntu
镜像。/bin/bash
:放在镜像名后的是命令,这里我们希望有个交互式Shell
,因此用的是/bin/bash
。要退出终端,直接输入exit
。
start/stop/restart
命令操作容器docker start
:启动一个或多个已经被停止的容器docker stop
:停止一个运行中的容器docker restart
:重启容器语法
docker start [OPTIONS] CONTAINER [CONTAINER...]
docker stop [OPTIONS] CONTAINER [CONTAINER...]
docker restart [OPTIONS] CONTAINER [CONTAINER...]
示例
tiger@tiger:~$ docker start 72a096e777d9
tiger@tiger:~$ docker stop 72a096e777d9
tiger@tiger:~$ docker restart 72a096e777d9
各个选项说明:
72a096e777d9
: 容器的ID在大部分的场景下,希望docker
的服务是在后台运行的,可以过-d
指定容器的运行模式。
示例
tiger@tiger:~$ docker run -itd ubuntu:20.04 /bin/bash
注意:加了-d
参数默认不会进入容器,想要进入容器需要使用指令docker exec
(下面会介绍到)。
attach
命令docker attach
:连接到正在运行中的容器
语法
docker attach [OPTIONS] CONTAINER
示例
tiger@tiger:~$ docker attach jolly_hopper
注意:使用attach进入容器后,如查看web容器执行的日志时,如果执行CTRL-D
或CTRL-C
时,或者在容器中执行exit
命令后,不禁会退出容器,还会停止容器。
exec
命令docker exec
:在运行的容器中执行命令
语法
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
选项说明:
OPTIONS
:参数
-d
:分离模式: 在后台运行
-i
:即使没有附加也保持STDIN 打开
-t
:分配一个伪终端
示例
tiger@tiger:~$ docker exec -it jolly_hopper /bin/bash
注意:使用docker exec
命令,退出容器终端,不会导致容器的停止。推荐使用此命令进入启动的容器。
docker export
:将文件系统作为一个tar
归档文件导出到STDOUT
。
语法
docker export [OPTIONS] CONTAINER
选项说明:
OPTIONS
:参数-o
:将输入内容写到文件。示例
tiger@tiger:~$ docker export -o ubuntu-20-`date +%Y%m%d`.tar jolly_hopper
tiger@tiger:~$ ls
公共的 模板 视频 图片 文档 下载 音乐 桌面 apache-maven-3.6.3 IdeaProjects repository snap ubuntu-20-20210107.tar
或使用下面命令格式:
docker export jolly_hopper > ubuntu.tar
docker import
: 从归档文件中创建镜像。
语法
docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
选项说明:
OPTIONS
:参数-m
:提交时的说明文字;示例
tiger@tiger:~$ docker import -m='sss' ubuntu.tar ubuntu:test
sha256:dde1113d0a0369641ed6e65fab81e3594685e6702ff723519bdde6c0fc436838
tiger@tiger:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu test dde1113d0a03 25 seconds ago 72.9MB
save
保存的镜像,export
导出容器load
用来载入镜像包,import
用来载入容器包,两种都会最终恢复为镜像。laod
不能对载入的重命名,import
可以
删除容器使用docker rm
命令
语法
docker rm [OPTIONS] CONTAINER [CONTAINER...]
选项说明:
TERM:镜像名称
OPTIONS
:参数
-f
:通过 SIGKILL 信号强制删除一个运行中的容器。
-l
:移除容器间的网络连接,而非容器本身。
-v
:删除与容器关联的卷。
示例
tiger@tiger:~$ docker rm -f ubuntu-test jolly_hopper
完美撒花
如果文章对您有帮助的话,麻烦给个点赞和关注吧!