docker操作命令大全和后台参数
程序员文章站
2023-11-19 15:39:58
一、命令行
可以通过运行 docker ,或者 docker help 命令得到命令行的帮助信息(我们以 CentOS 为操作环境为例):
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker help
Usage: docker [OPTIONS] COMMA... ......
一、命令行
可以通过运行 docker ,或者 docker help 命令得到命令行的帮助信息(我们以 centos 为操作环境为例):
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker help usage: docker [options] command a self-sufficient runtime for containers options: --config string location of client config files (default "/root/.docker") -c, --context string name of the context to use to connect to the daemon (overrides docker_host env var and default context set with "docker context use") -d, --debug enable debug mode -h, --host list daemon socket(s) to connect to -l, --log-level string set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info") --tls use tls; implied by --tlsverify --tlscacert string trust certs signed only by this ca (default "/root/.docker/ca.pem") --tlscert string path to tls certificate file (default "/root/.docker/cert.pem") --tlskey string path to tls key file (default "/root/.docker/key.pem") --tlsverify use tls and verify the remote -v, --version print version information and quit management commands: builder manage builds config manage docker configs container manage containers context manage contexts engine manage the docker engine image manage images network manage networks node manage swarm nodes plugin manage plugins secret manage docker secrets service manage services stack manage docker stacks swarm manage swarm system manage docker trust manage trust on docker images volume manage volumes commands: attach attach local standard input, output, and error streams to a running container build build an image from a dockerfile commit create a new image from a container's changes cp copy files/folders between a container and the local filesystem create create a new container diff inspect changes to files or directories on a container's filesystem events get real time events from the server exec run a command in a running container export export a container's filesystem as a tar archive history show the history of an image images list images import import the contents from a tarball to create a filesystem image info display system-wide information inspect return low-level information on docker objects kill kill one or more running containers load load an image from a tar archive or stdin login log in to a docker registry logout log out from a docker registry logs fetch the logs of a container pause pause all processes within one or more containers port list port mappings or a specific mapping for the container ps list containers pull pull an image or a repository from a registry push push an image or a repository to a registry rename rename a container restart restart one or more containers rm remove one or more containers rmi remove one or more images run run a command in a new container save save one or more images to a tar archive (streamed to stdout by default) search search the docker hub for images start start one or more stopped containers stats display a live stream of container(s) resource usage statistics stop stop one or more running containers tag create a tag target_image that refers to source_image top display the running processes of a container unpause unpause all processes within one or more containers update update configuration of one or more containers version show the docker version information wait block until one or more containers stop, then print their exit codes run 'docker command --help' for more information on a command.
其中:
info、version是系统环境信息相关的命令
events、history、logs 是日志信息相关的命令
login\pull\push\search是dockerhub服务相关的命令
其余都是日常维护相关的命令
二、命令语法
基本用法:命令 + 参数
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker info client: debug mode: false server: containers: 4 running: 0 paused: 0 stopped: 4 images: 2 server version: 19.03.1 ...............(省略) plugins: volume: local network: bridge host ipvlan macvlan null overlay log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog security options: kernel version: 3.10.0-693.2.2.el7.x86_64 operating system: centos linux 7 (core) ostype: linux architecture: x86_64
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker version client: docker engine - community version: 19.03.1 api version: 1.40 go version: go1.12.5 git commit: 74b1e89e8a built: thu jul 25 21:17:37 2019 os/arch: linux/amd64 experimental: false server: docker engine - community engine: version: 19.03.1 api version: 1.40 (minimum version 1.12) go version: go1.12.5 git commit: 74b1e89e8a built: thu jul 25 21:27:55 2019 os/arch: linux/amd64 experimental: false containerd: version: v1.2.6 gitcommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: version: 1.0.0-rc8 gitcommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: version: 0.18.0 gitcommit: fec3683
查看已下载的镜像
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker images repository tag image id created size ubuntu latest 3556258649b2 2 weeks ago 64.2mb hello-world latest fce289e99eb9 7 months ago 1.84kb learn/tutorial latest a7876479f1aa 6 years ago 128mb
单个字符的参数可以放在一起:
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker run -t -i ubuntu bash # 使用镜像 ubuntu:latest 以交互模式启动一个容器,在容器内执行 bash 命令,标红部分表示使用分开的参数 unable to find image 'ubuntu:latest' locally latest: pulling from library/ubuntu 7413c47ba209: pull complete 0fe7e7cbb2e8: pull complete 1d425c982345: pull complete 344da5c95cec: pull complete digest: sha256:c303f19cfe9ee92badbbbd7567bc1ca47789f79303ddcef56f77687d4744cd7a status: downloaded newer image for ubuntu:latest root@a0629a1e86e4:/# cat /etc/issue ubuntu 18.04.2 lts \n \l root@a0629a1e86e4:/# exit exit [root@iz2ze2bn5x2wqxdeq65wlpz ~]#
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker run -ti ubuntu bash # 标红部分,表示把单个字符参数,合在一起使用 root@5b84ee078161:/# exit exit
[root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker rm imgid-1 imgid-2 # 标红部分,表示把多个参数放在一行使用 error: no such container: imgid-1 error: no such container: imgid-2
二、docker 后台进程参数
参数 | 介绍 |
---|---|
--api-enable-cors=false | 远程api调用。 |
-b, --bridge="" | 桥接一个系统上的网桥设备到 docker 容器里,当使用 none 可以停用容器里的网络 |
--bip="" | 使用 cidr 地址来设定网络桥的 ip。此参数和 -b 不能一起使用。 |
-d, --debug=false | 开启debug模式。例如:docker -d -d |
-d, --daemon=false | 开启daemon模式。 |
--dns=[] | 设置容器使用dns服务器。例如: docker -d --dns 8.8.8.8 |
-dns-search=[] | 设置容器使用指定的dns搜索域名。如: docker -d --dns-search example.com |
--exec-driver="native" | 设置容器使用指定的运行时驱动。如:docker -d -e lxc |
-g, --group="docker" | 在后台运行模式下,赋予指定的group到相应的unix socket上。注意,当此参数 --group 赋予空字符串时,将去除组信息 |
-g, --graph="/var/lib/docker" | 设置docker运行时根目录 |
-h, --host=[] | 设置后台模式下指定socket绑定,可以绑定一个或多个 tcp://host:port, unix:///path/to/socket, fd://* 或 fd://socketfd。如:$ docker -h tcp://0.0.0.0:2375 ps 或者$ export docker_host="tcp://0.0.0.0:2375"$ docker ps |
-icc=true | 设置启用内联容器的通信。 |
--ip="0.0.0.0" | 设置容器绑定ip时使用的默认ip地址 |
--ip-forward=true | 设置启动容器的 net.ipv4.ip_forward |
--iptables=true | 设置启动docker容器自定义的iptable规则 |
--mtu=0 | 设置容器网络的mtu值,如果没有这个参数,选用默认 route mtu,如果没有默认route,就设置成常量值 1500。 |
-p, --pidfile="/var/run/docker.pid" | 设置后台进程pid文件路径。 |
-r, --restart=true | 设置重启之前运行中的容器 |
-s, --storage-driver="" | 设置容器运行时使用指定的存储驱动,如,指定使用devicemapper,可以这样:docker -d -s devicemapper |
--selinux-enabled=false | 设置启用selinux支持 |
--storage-opt=[] | 设置存储驱动的参数 |
三、docker 命令大全
容器生命周期管理 run start/stop/restart kill rm pause/unpause create exec 容器操作 ps inspect top attach events logs wait export port 容器rootfs命令 commit cp diff 镜像仓库 login pull push search 本地镜像管理 images rmi tag build history save load import docker信息|版本 info version
1、docker run :创建一个新的容器并运行一个命令
语法:docker run [options] image [command] [arg...]
options说明: -a stdin: 指定标准输入输出内容类型,可选 stdin/stdout/stderr 三项; -d: 后台运行容器,并返回容器id; -i: 以交互模式运行容器,通常与 -t 同时使用; -p: 随机端口映射,容器内部端口随机映射到主机的高端口 -p: 指定端口映射,格式为:主机(宿主)端口:容器端口 -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; --name="nginx-lb": 为容器指定一个名称; --dns 8.8.8.8: 指定容器使用的dns服务器,默认和宿主一致; --dns-search example.com: 指定容器dns搜索域名,默认和宿主一致; -h "mars": 指定容器的hostname; -e username="ritchie": 设置环境变量; --env-file=[]: 从指定文件读入环境变量; --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定cpu运行; -m :设置容器使用内存最大值; --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型; --link=[]: 添加链接到另一个容器; --expose=[]: 开放一个端口或一组端口; --volume , -v: 绑定一个卷
实例:
使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx。
docker run --name mynginx -d nginx:latest
使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口。
docker run -p -d nginx:latest
使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data。
docker run -p 80:80 -v /data:/data -d nginx:latest
绑定容器的 8080 端口,并将其映射到本地主机 127.0.0.1 的 80 端口上。
docker run -p 127.0.0.1:80:8080/tcp ubuntu bash
使用镜像nginx:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。
docker run -it nginx:latest /bin/bash
上一篇: 做好营销型企业的SEO工作?
下一篇: 几乎被人遗忘的SEO为啥工资那么高?