常用的几个命令
1、镜像操作
查看有哪些镜像
docker images == docker image ls
拉取镜像
docker pull ** == docker image pull
删除镜像
docker image rm (镜像名称or镜像ID) == docker imi (镜像名称or镜像ID)
2、容器操作
运行容器
docker container(可省略) run 镜像名 执行的命令
后台运行容器
docker run -d 镜像名 命令
运行容器,当容器中命令执行完成后自动删除--注意,删除后,生成的数据也会被删除
docker run --rm 镜像名 命令
停止容器
docker stop 容器ID
查看容器
docker ps -a == docker container ls -a(程序运行完后,默认结束-停止,需要 -a 才可查看)
docker ps -q # -q 只显示容器id
删除容器
docker container rm (容器的ID)
杀死运行中的容器
docker kill 容器ID
查看所有容器ID
docker ps -q
杀死所有容器
docker kill $(docker ps -q)
容器中数据卷(volume)
-v 将物理机的目录映射到容器中
docker run --rm -v /root:/data alpine touch /data/test.txt
将当前目录映射到容器中 $(pwd)
docker run --rm -v $(pwd):/data alpine touch /data/test2.txt
当目录有空格时,加 双引号;;; :ro 代表只读,如果是写操作会报错
docker run --rm -v "$(pwd):/data:ro" alpine touch /data/test2.txt
在docker中运行服务并暴露端口(运行web服务)
下载带Nginx的镜像
docker pull nginx:alpine(默认是debian基础上的镜像,太大,测试可用alpine)
docker run --rm -d -P nginx:alpine # -P 随机产生一个端口
docker run --rm -d -p 8080:80 nginx:alpine # -p 指定一个端口,映射容器中的80端口