docker 命令
docker search mysql -f=STARS=3000
查询点赞数大于3000的images
docker rmi -f imagesID
docker rmi - f $(docker images -aq)
rmi 只是 rm 是删除 i、指的images -aq -a指的是--all -q指的只显示imageID
容器命令
docker pull centos
拉取镜像
docker run [可选参数] image --name="Name" 容器的名字, tomcat02用于区别容器 -d 后台运行 -it 使用交互方式运行,进入容器查看内容 -p 指的容器端口-p 8080:8080 -p ip:主机端口:容器端口 -p 主机端口:容器端口(常用) -p 容器端口 -P 随机指定端口
进入容器
docker run -it centos /bin/bash
退出容器
exit 容器停止并退出
Ctrl + P + Q 容器不停止退出
查询容器
docker ps 查询容器--列出当前正在运行的容器
docker ps -a列出当前正在运行的容器+带出历史运行过的容器
docker ps -n=? 显示最近创建的容器
docker ps -q 只显示当前运行的容器编号
删除容器
docker rm 容器id 删除指定的容器
docker rm $(docker ps aq) 删除所有容器
docker ps -a -q|xargs docker rm 删除所有容器
启动容器
docker start 容器id 启动容器
docker restart 容器id
docker stop 容器id
docker kill 容器id
常用的其他命令
后台启动容器
docker run -d centos
- 问题1:docker ps 发现centos 停止了
- 常见的坑:docker使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止
- nginx,容器启动后,发现自己没有提供服务,就会立刻停止,就是没有程序了
查看日志
docker logs
docker logs -f -t --tail 10 容器
查看容器的进程信息
docker top 容器id
查看容器的的源数据
docker inspect --help
进入当前正在运行的容器
容器通常都是后台方式运行的,需要进入容器,修改一些配置
docker exec -it 容器id /bin/bash 进入容器后开启一个新的终端
docker attach 容器id 进入容器正在执行的终端,不会启动新的进程
从容器内拷贝文件到主机上
docker cp 容器id:/home/test.java /home
拷贝是一个手动过程,未来我们使用-v卷来,可以实现