Docker常用指令
docker pull ubuntu #下载ubuntu镜像
docker search ubuntu #查询镜像
docker run -it ubuntu /bin/bash #启动镜像,-i交互式操作,-t终端,-d后台运行,/bin/bash是进入容器后的命令形式
docker ps -a #查看所有容器
docker stop <容器名称> #关闭容器
docker start <容器名称> #开启容器
docker restart <容器名称> #重启容器
docker exec -it <容器名称> bash #进入容器,exit退出不会关闭镜像
docker exec -u root <容器名称> chown -R www-data:www-data /var/www/html #修改容器内文件权限
docker attach <容器名称> #同样是进入容器,但退出后容器也会关闭
docker rm <容器名称> #删除容器
docker rm -f <容器名称> #强制删除正在运行的容器
docker rm -v <容器名称> #删除与容器关联的数据卷
docker rm -l <容器名称> #移除容器间的网络连接,并非删除该容器
docker inspect <容器名称> #查看容器详情
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <容器名称> #查看容器IP
docker export <容器名称> > test.tar #导出容器到test
cat ./test.tar | docker import - mysql:test #将本地容器文件导入成镜像
docker import http://example.com/exampleimage.tgz example/imagerepo #也可以URL导入
docker images #查看下载的所有镜像
docker rmi php:7.4.33-fpm #删除PHP镜像
docker rm -f $(docker ps -a) #删除所有容器
docker rmi $(docker images) #删除所有镜像
docker build -t hamster/ubuntu:22.4 . #构建镜像,-t指定要创建的目标镜像名,.Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径
docker system prune #清除所有不使用的资源
docker image prune -a #删除所有未被标记的镜像
docker volume prune #删除所有未被使用的数据卷
docker network prune #删除所有未被使用的网络
docker logs <容器名称> #查看容器日志,可以借此查看容器无法启动的原因
docker cp /www/html <容器名称>:/www/ #将本地数据拷贝到容器指定位置
docker cp <容器名称>:/www/ /www/html #将容器数据拷贝到本地