docker常用命令

记录下使用docker过程中常用到的镜像及容器命令

镜像相关

构建镜像

构建一个标签为 v1nginx 镜像

1
docker build -t nginx:v1 .

. 表示当前路径

搜索镜像

1
docker search python

拉取镜像

1
docker pull python:3.8

查看镜像

1
docker images

查看镜像版本

1
docker image inspect python:3.9 | grep -i version

删除镜像

在此之前需删除该镜像的容器

1
docker rmi <镜像id>

还有一种方法,这会删除所有没有容器的镜像

1
docker image prune -a

容器相关

运行容器

1
2
3
4
5
6
docker run -d \
-p 4000:4000 \
--name my-nginx \
--restart always \
-v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime \
nginx:v1

-d :在分离模式下(后台)运行
--name :给运行的容器取一个名字,即 my-nginx
-p :docker宿主机端口映射 my-nginx 容器端口,即4000对4000
--restart :将 my-nginx 容器设为自启动
-v :数据挂载,这里用来同步宿主机与容器时间,使其一致
nginx:v1 :使用的镜像

查看容器

查看运行的容器

1
docker ps

查看所有容器

1
docker ps -a

进入容器

进入 my-nginx 容器

1
docker exec -it my-nginx /bin/bash

输入 exit 退出容器

启动容器

启动 my-nginx 容器

1
docker start my-nginx

重启容器

重启 my-nginx 容器

1
docker restart my-nginx

停止容器

停止 my-nginx 容器

1
docker stop my-nginx

删除容器

删除 my-nginx 容器,在此之前需停止容器

1
docker rm my-nginx

其它命令

docker-compose.yml

1
docker-compose up -d

拷贝容器文件

拷贝容器内的app文件夹到宿主机当前路径

1
docker cp 容器名:/app ./app