Docker
本文用于记录常用的docker指令,关于docker的介绍和学习可以看这篇博客
服务相关命令
启动docker服务
systemctl start docker
停止docker服务
systemctl stop docker
重启docker服务
systemctl restart docker
查看docker服务状态
systemctl status docker
设置开机启动docker服务
systemctl enable docker
镜像相关命令
查看镜像:查看本地所有的镜像
docker images
搜索镜像:从网络中查找需要的镜像
docker search <name>
拉取镜像:从docker仓库中下载镜像(版本号可以看官网)
docker pull <name>
删除镜像:删除本地镜像
docker rmi <id>
docker rmi 'docker images -q'
#删除所有镜像
容器相关命令
查看容器
docker ps
#查看正在运行的容器docker ps -a
#查看所有容器创建并启动容器
docker run 参数
参数说明
-i :保持容器运行。
-t :为容器重新分配一个伪输入终端
-d :以后台模式运行容器。需要
docker exec
进入容器内部-it创建的容器为交互式容器 -id创建的容器为守护式容器
–name :为创建的容器命名
进入容器
docker exec 参数
停止容器
docker stop 参数
启动容器
docker start 参数
删除容器(在容器停止状态下才能删除)
docker rm 参数
查看容器信息
docker inspect 参数
容器数据卷
创建启动容器时,使用
-v
参数设置数据卷docker run ... -v 宿主机目录(文件):容器内目录(文件)
目录为绝对路径
如果目录不存在,会自动创建
可以挂载多个数据卷
镜像制作
容器转为镜像
docker commit <容器id> <镜像name:version>
镜像转为压缩文件用于传输
docker save -o <压缩文件name> <镜像name:version>
压缩文件还原镜像
docker load -i <压缩文件name>
Dockerfile
Dockerfile
的编写,可以理解为编写一堆命令,这堆命令做的事,就是基于一个基础镜像(这个镜像通常是选择官方的镜像),跑一个临时的容器,然后将代码添加到临时容器中并安装运行代码所需要的环境,最后将这个临时的容器打包成新的镜像,删除这个临时的镜像。这种效率比较慢,还不如本地跑一个容器,将所有环境配置好,然后打包成镜像使用。