我们知道Docker并不是容器,而只是一个管理容器的引擎;

Docker的底层运行原理:

Docker服务启动–>下载镜像–>启动该镜像得到一个容器–>容器里运行着我们想要的程序;

如何查看docker run时使用的命令_docker

第一个Docker容器

根据Docker的运行机制,我们将按照如下步骤运行第一个Docker容器;
1、将Docker服务启动;
2、下载一个镜像,Docker 运行一个容器前需要本地存在有对应的镜像,如果镜像不存在本地,Docker 会从镜像仓库下载(默认是 Docker Hub公共注册服务器中的仓库 https://hub.docker.com)。

CentOS下怎么下载(pull)镜像?
从docker hub官网搜索要使用的镜像,也可以在命令行使用命令搜索要使用的镜像,
比如 docker search tomcat进行搜索,然后下载所需要的镜像:
下载镜像:docker pull docker.io/tomcat
运行镜像:docker run docker.io/tomcat 前台运行, 要后台运行,加参数 -d
显示本地已有的镜像:docker images

如何查看docker run时使用的命令_tomcat_02


在列出信息中,可以看到几个字段信息

REPOSITORY:来自于哪个仓库,比如 docker.io/tomcat

TAG:镜像的标记,比如 latest最新的

IMAGE ID:镜像的 ID 号(唯一)

CREATED:创建时间

SIZE:镜像大小

3、启动下载下来的镜像得到一个容器:

docker run -d docker.io/tomcat 或者 docker run -d 41a54fe1f79d (镜像ID)

默认是前台启动,如果需要后台启动,指定-d参数;

通过 ps -ef | grep tomcat 查看,检查tomcat镜像是否启动容器成功;

进入Docker容器

docker ps 查看运行了哪些容器
docker stop cef0d139bfd6(容器ID) --停止某个容器
进入容器:docker exec -it cef0d139bfd6(容器ID) bash
其中i表示交互式的,也就是保持标准输入流打开;
t表示虚拟控制台,分配到一个虚拟控制台;
退出容器:exit

客户机访问容器

从客户机上访问容器,需要有端口映射,docker容器默认采用桥接模式与宿主机通信,需要将宿主机的ip端口映射到容器的ip端口上;
停止容器:docker stop 容器ID/名称

映射端口 Linux端口8080 映射 容器的端口8080
启动容器:docker run -d -p 8080:8080 docker.io/tomcat 或者 41a54fe1f79d