前提:有镜像才能创建容器
一、基本使用
1、新建并启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 如果本地有直接拉取,本地没有从hub.docker拉取 参数: --name=“容器新名字”:为容器指定一个名称 -d:后台运行容器,并返回容器ID,即启动守护式容器 -i:以交互模式运行容器,通常与 -t 同时使用 -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用 -P:随机端口映射 docker run -it -P -p:指定端口映射,有四种格式 docker run -it -p 8888:8080 容器ID ip:hostPort:containerPort ip::containerPort hostPort:containerPort containerPort --rm:容器退出时自动清理容器内部的文件系统。 -h HOSTNAME 或者 --hostname=HOSTNAME:设定容器的主机名,它会被写到容器内的 /etc/hostname 和 /etc/hosts。 --dns=IP_ADDRESS:添加 DNS 服务器到容器的 /etc/resolv.conf 中,让容器用这个服务器来解析所有不在 /etc/hosts 中的主机名。 --dns-search=DOMAIN:设定容器的搜索域,当设定搜索域为 .example.com 时,在搜索一个名为 host 的主机时,DNS 不仅搜索 host,还会搜索 host.example.com。 -ro:容器为只读模式 --restart=always:任何退出都会进行重置,除非容器故障 --restart=on-failure: 容器内主进程退出时返回的“退出状态码”不是0不进行重启 --restart=unless-stopped:任何退出,但用docker stop命令手动停止后不再重启 例:$ docker run -it --rm -h host_ubuntu --dns=114.114.114.114 --dns-search=test.com -ro --restart-unless-stopped ubuntu
2、列出当前运行的容器
docker ps [OPTIONS] 参数: -a:列出当前所有正在运行的容器+历史上运行过的 -l:显示最近创建的容器 -n:显示最近n个创建的容器 -q:静默模式,只显示容器编号 --no-trunc:不截断退出
3、退出容器
exit:容器停止退出 ctrl+P 执行后再执行 ctrl+C:容器退出,但不停止
4、启动容器
docker start 容器ID或容器名字 docker start nginx:7.5
5、重启容器
docker restart 容器ID或容器名字
6、停止容器(需等待)
docker stop 容器ID或容器名字
7、强制停止容器
docker kill 容器ID或容器名字
8、删除已经停止的容器
docker rm 容器ID或容器名字
9、一次性删除多个容器
docker rm -f $(docker ps