Docker常用命令
#搜索镜像
#在官方的 docker 仓库中搜索指定名称的 docker 镜像,也会有很多镜像
docker search centos:7.3.1611 #带指定版本
docker search centos #不带版本号默认latest
#下载镜像
#从 docker 仓库将镜像下载到本地,命令格式如下:
docker pull nginx
docker pull mysql
#查看本地下载的镜像
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 605c77e624dd 2 months ago 141MB
mysql latest 3218b38490ce 2 months ago 516MB
#REPOSITORY 镜像所属的仓库名称
#TAG 镜像版本号(标识符),默认为 latest
#IMAGE ID 镜像唯一 ID 标示
#CREATED 镜像创建时间
#SIZE 镜像的大小 12345678910111213
#镜像导出
#可以将镜像导出到服务器上为一个压缩的文件
#方法一:
docker save nginx -o nginx.tar.gz
docker save mysql -o mysql.tar.gz
#方法二:
docker save nginx > nginx.tar.gz
docker save mysql > mysql.tar.gz
#镜像删除
docker rmi nginx
#镜像导入
docker load < nginx.tar.gz
docker load < mysql.tar.gz
#查看镜像
docker images
#显示所有容器
docker ps -a
#删除运行中的容器
docker rm -f 256150320c
#端口映射
-d 后台运行
#随机端口映射
docker run -P nginx
#前台启动并随机映射本地端口到容器的80前台启动的会话窗口无法进行其他操作,除非退出,但是退出后容器也会退出
#指定端口映射
方式1:本地端口81映射到容器的80端口
docker run -p 81:80 --name nginx-test nginx
方式2:本地IP:本地端口:容器端口
docker run -p 192.168.11.11:81:80 --name nginx-test1 nginx
方式3:本地IP:本地随机端口:容器端口
docker run -p 192.168.11.11::80 --name nginx-test2 nginx
#查看容器已映射的端口
docker port nginx-test
#自定义容器名称
docker run -it --name nginx-test nginx
#后台启动容器
docker run -d --name nginx-test nginx
#创建并进入容器
docker run -it --name nginx-test1 nginx /bin/sh
#容器的启动和关闭
docker stop 1651561asd1 #停止容器
docker start 36594asd59 #启动容器
#进入到正在运行的容器
docker exec -it e4ef9a1b1c4b bash
#批量关闭正在运行的容器
docker stop `docker ps -a -q`
docker stio $(docker ps -a -q)
#批量强制关闭正在运行的容器
docker kill $(docker ps -a -q)
#拷贝容器中的文件到宿主机
docker cp nginx-test:/etc/hosts /home/
#给容器传递环境变量
#有一些容器启动需要使用环境变量比如:mysql
docker run -it -p -d 3306:3306 --env "MYSQL_ROOT_PASSWORD=123456" --name mysql mysql
#查看容器日志
docker logs b17addd6feb9
#进入容器后 nignx的配置文件在 /etc/nginx中
#使用vim,需要 apt-get update, apt-get install vim