博客主页:JavaProfessional
一个专注于Java的博主,致力于使用通俗易懂的语句讲解内容,期待您的关注!
文章目录
Docker 基本概念
- docker image:docker镜像,可以理解为Java的类
- docker container:docker容器,从镜像中创建的具体docker实例,可以理解为Java的对象。
- docker hub:docker仓库,存放镜像的中央仓库,类似于Maven的中央仓库
- docker compose:docker的单机编排工具,使用该工具可以启动容器,不过只能管理本机的容器。
- dockerfile:创建镜像的编排文件,注意docker compose是管理容器,dockerfile是编排镜像。
- kubernetes:大名鼎鼎的k8s,docker的集群编排工具,使用该工具可以编排docker集群环境,就是可以管理集群各个节点上的docker容器。
- docker swarm:同k8s,但是市场使用率较小。
Docker Hub
docker镜像的中央仓库,官方网址:https://hub.docker.com/
我们可以在这个网站看到各种各样的镜像。
Docker Image
拉取镜像
docker pull <镜像的名称>
不知道有哪些镜像,或者记不住镜像的名称?docker hub就大展身手了!比如我们想要下载一个java的镜像,我们可以在docker hub上搜索openjdk
我们可以看到第一个就是openjdk的镜像,并且时docker官方的镜像,干净又卫生啊。我们点进去就可以看到拉取这个镜像的命令。
这里还展示了不同版本的镜像,什么是不同版本的镜像?比如我想要拉取的openjdk镜像里的jdk版本是8,我想拉取的mysql镜像里面的mysql版本是5.7,这个都是可以对应不同tag的镜像。
查看本机镜像
docker images
展示了镜像的名称,版本(tag),镜像ID,创建日期。
删除本机镜像
docker rmi <镜像名称:版本号或者镜像ID>
查看镜像具体信息
docker inspect <镜像ID>
包含了该镜像的id,tag,摘要,父镜像,创建日期,作者等信息。(上图展示的不全,大家可以自己动手实践看一下)
Docker Container
创建容器
sudo docker run -d centos
-d是指我们让容器在后台运行,这样就不会进入到centos容器中了。
但是如果我们想要在输入完启动命令,容器创建成功则立即进入容器,则使用以下的命令:
sudo docker run -it centos /bin/bash
-it是指以交互式启动容器,进入容器使用/bin/bash进行交互。
查看容器
docker ps
这里只显示运行中的容器,如果想要查看所有的容器(包括创建成功但是停止的容器,之后我们会学习容器的生命周期),那么使用以下命令:
docker ps -a
停止容器
docker stop <容器ID>
删除容器
docker rm <容器ID>
查看容器状态
docker stats <容器ID>
进入正在运行的容器
比如我们想要进入到mysql容器中,登录mysql -uroot -p,该在哪里输入呢?我们就需要进入到容器里面。
docker exec -it <容器ID> /bin/bash