一、普通命令
1.start/stop/restart
docker start 容器名:启动已经被停止的容器
docker stop 容器名:停止一个运行中的容器
docker restart 容器名:重启容器
2.run:创建一个新的容器并运行一个命令
语法:docker run [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-p: 端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
【实例】使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx
docker run --name mynginx -d nginx:latest
使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口
docker run -P -d nginx:latest
3.docker create:创建一个新的容器但不启动它用法同 docker run
语法:docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
【实例】使用docker镜像nginx:latest创建一个容器,并将容器命名为myrunoob
docker create --name myrunoob nginx:latest
4.杀掉容器
docker kill 容器名:杀掉一个运行中的容器
5.删除容器
语法:docker rm [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:
-f :通过SIGKILL信号强制删除一个运行中的容器
-l :移除容器间的网络连接,而非容器本身
-v :删除与容器关联的卷
【实例】强制删除容器db01、db02
docker rm -f db01 db02
【实例】移除容器nginx01对容器db01的连接,连接名db
docker rm -l db
【实例】删除容器nginx01,并删除容器挂载的数据卷
docker rm -v nginx01
6.在运行的容器中执行命令
语法:docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:
-d :分离模式: 在后台运行
-i :即使没有附加也保持STDIN 打开
-t :分配一个伪终端
【实例】进入容器 mynginx
docker exec -it mynginx bash
7.启动 Docker
systemctl start docker
8.停止Docker
systemctl stop docker
9.普通重启 Docker
systemctl restart docker
10.列出查看版本
docker version
二、容器操作
1.列出容器
语法:docker ps [OPTIONS]
OPTIONS说明:
-a:显示所有的容器,包括未运行的
-f:根据条件过滤显示的内容
--format:指定返回值的模板文件
-l:显示最近创建的容器
-n:列出最近创建的n个容器
--no-trunc:不截断输出
-q:静默模式,只显示容器编号
-s:显示总的文件大小
2.实时查看日志
docker logs [OPTIONS] CONTAINER
OPTIONS说明:
-f : 跟踪日志输出
--since :显示某个开始时间的所有日志
-t : 显示时间戳
--tail :仅列出最新N条容器日志
【实例】 实时查看日志
docker logs -f -t --tail 200 creditapp
三、镜像命令
1.列出本机Docker上已经安装的镜像
docker images
2.搜索Docker hub上面的镜像
普通搜索,以Tomcat为例
docker search tomcat
3.从Docker Hub上面下载镜像
以下载tomcat为例
docker pull tomcat[:version]
四、容器拷贝文件
1.docker从容器里面拷文件到宿主机
docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径
【实例】
假设容器名为testtomcat,要从容器里面拷贝的文件为:/usr/local/tomcat/webapps/test/js/test.js, 现在要将test.js从容器里面拷到宿主机的/opt路径下面
docker cp testtomcat:/usr/local/tomcat/webapps/test/js/test.js /opt
2.从宿主机拷文件到容器里面
docker cp 要拷贝的文件路径 容器名:要拷贝到容器里面对应的路径
【实例】
假设容器名为testtomcat,现在要将宿主机/opt/test.js文件拷贝到容器里面 的/usr/local/tomcat/webapps/test/js路径下面
docker cp /opt/test.js testtomcat:/usr/local/tomcat/webapps/test/js