1、docker build:本地将一个docker文件打包成镜像
2、docker push:将自己打包的镜像传到镜像服务器上
3、docker pull:将镜像服务器上的镜像拉取到本地
4、docker images: 查看镜像服务器上的镜像
5、docker rmi:删除一个镜像
6、docker save:将镜像打包成一个压缩包
7、docker load :将镜像压缩包解压为镜像
8、查看镜像中的基本命令: docker --help
9、查看某个具体的命令: docker images --help
1、docker run:创建一个容器并运行
2、docker pause:将运行的容器暂停
3、docker unpause:将暂停的容器恢复
4、docker stop:将容器停止(进程杀死,内存释放)
5、docker start:从停止状态恢复到运行(新开进程,加载到内存)
6、docker rm:删除指定容器,(杀死进程,释放内存,硬盘的文件删除)
7、docker ps:查看运行容器及状态
8、docker logs :查看容器的日志 ,docker -f logs是持续查看容器的日志
9、docker exec: 进入到容器内部,然后执行命令
docker运行命令:(去dockerhub官网去查找运行的具体命令)
1、docker run:创建并运行一个容器
2、 --name :给容器起一个名字,这个名字一定要唯一 ,使用具体的名字替换containerName就行
3、-p:将宿主机的端口与容器的端口进行映射,冒号左侧是宿主机端口,右侧是容器端口。映射的原因:因为容器是隔离,外面的电脑不能直接访问容器内部。 使用宿主机的一个端口与容器的端口进行绑定,访问宿主机的端口就是访问容器。
4、-d:后台运行容器
5、nginx:镜像的名称,通过docker images查看镜像的名称和版本。如果直接只是镜像的名称,那么运行的是最新版本latest 。如果不是最新的则跟上 nginx:tag(版本号)
三、数据卷命令:
在容器中修改的缺点:
1、不便于修改:我们需要进入到容器内部进行修改,容器内部只是linux的一个阉割版,没有很好的命令进行修改。
2、数据不可复用:在容器内修改对外是不可见的。所有修改对新创建的容器是不可复用的。
3、升级维护困难:当我们这个容器的版本过低要进行版本的更迭,那么旧版本上配置的数据在新的数据上不能复用(旧版本删除,配置的数据也随之删除了)。
数据卷(volume):是一个虚拟的目录,指向宿主主文件系统的某个目录
数据卷的基本语法:
1、docker volume create :创建一个volume(默认的路径是/var/lib/docker/volumes/)
2、docker volume inspect volumeName(将name替换) :显示一个或者多个volume的信息
3、docker volume ls:列出所有的volume
4、docker volume prune:删除所有未使用的volume,也就是没有挂载的数据卷
4、docker volume rm:删除一个或多个指定的volume
挂载数据卷:
1、-v html:/root/html :把html数据卷挂载到容器内的/root/html这个目录当中(挂载也就是双向绑定,也可以说是双向的数据交换。容器内的数据可以到数据卷当中,数据卷中的数据也能到容器,这个交换是实时的)
2、其他命令的解释看前面docker的启动
3、当你启动的时候,没有创建某个数据卷,但是你启动的时候又绑定了,那么这个数据卷在启动的时候就会自动创建。
宿主机的目录挂载:这个挂载就是不在默认的数据卷存放路径了(/var/lib/docker/volumes/),这个路径可以是随意的,你想在哪里就在哪里。