在linux系统中安装完成docker后,我们开始进行docker的镜像、容器的使用。

在使用docker时,首先要明确的两个概念:image(镜像) 与  container (容器)

image:根据官网的解释,镜像是一个为容器提供服务的独立的文件系统,它包含独立运行所需要的文件与代码。

    简单地说:镜像就是一个不包含linux内核而又精简的linux系统

    docker 镜像默认存储在/var/lib/docker/<storage-driver>中,现在最新版本的linux系统的存储驱动一般是overlay2格式

container:容器其实是在镜像的最上层加了一层读写层,在容器运行中所作的任何配置,如启动不同的tomcat容器,

      配置不同端口号,这些配置都保存在读写层不会修改镜像本身的内容。

首先:下载镜像

官方镜像中心仓库地址:https://hub.docker.com/search/?type=image

使用命令:docker pull $imageName   ($imageName为具体镜像名字,如tomcat,nginx等)

第二步:根据镜像创建一个可运行的容器

以tomcat为例,使用


#下载最新的tomcat版本
docker pull tomcat 或 docker image pull tomcat

docker images  #查看本地全部镜像

#以后台交互式窗口的方式运行tomcat镜像,并将容器命名为tomcat8080
#其中-itd为-i -t -d 三个命令的所写
#docker run :创建一个新的容器并运行一个命令
docker run -itd --name tomcat8080 tomcat #查看当前运行的容器信息
docker ps #删除容器的命令
docker rm -f $containerName #强制终止并删除容器

第三步:访问运行的tomcat,确认成果

docker pull $image

直接访问http://localhost:8080访问不成功

原因:因为tomcat8080容器相当于一个独立运行的虚拟机,其ip地址并不是本机的ip,因此我们首先需要确定容器使用的ip

docker inspect NAMES
# 查看容器所有状态信息; docker inspect --format='{{.NetworkSettings.IPAddress}}' $ID / $NAMES
# 查看 容器ip 地址 docker inspect --format '{{.Name}} {{.State.Running}}' NAMES
# 容器运行状态

根据查询的ip地址,访问 http://container-ip:8080.

这一点,在tomcat镜像说明中,有介绍

资料参考:https://www.runoob.com/docker/docker-command-manual.html    docker命令大全

      https://cr.console.aliyun.com/cn-hangzhou/instances/images?search=tomcat  阿里云镜像中心

      https://www.jianshu.com/p/65a5c8d9cb9a  ubuntu配置jdk

      

Docker下载镜像并创建容器运行的更多相关文章

  1. Docker 为 ASP.NET Core WebApi 应用程序生成 Docker 映像,创建容器并运行

    1.使用VS2017新建ASP.NET Core WebApi项目 选择API启用Docker支持 2.为 ASP.NET Core WebApi 应用程序生成 Docker 映像,并创建容器运行 生 ...

  2. docker下载镜像太慢的解决方案

    参考链接:https://blog.csdn.net/weixin_43569697/article/details/89279225 docker下载镜像卡死或太慢找了网上很多方法,使用镜像中国也是 ...

  3. Docker的镜像理解以及容器的备份、恢复和迁移操作

    Docker的镜像理解以及容器的备份.恢复和迁移操作 这篇文章主要介绍了Docker的镜像理解以及容器的备份.恢复和迁移操作,覆盖很多原理知识以及容器的重要操作步骤,极力推荐!需要的朋友可以参考下 D ...

  4. Docker 下载镜像慢的问题解决方法

    让你火箭般的速度下载docker镜像! 的冷漠度 百家号17-11-1713:09 因为有墙的原因所以在国内下载docker镜像的速度非常慢,有时候是几kb每秒,那个蛋疼的等待,真是谁等谁知道!下面我 ...

  5. Docker:镜像操作和容器操作

    镜像操作 列出镜像: $ sudo docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE hello-world latest 0a6b ...

  6. Docker 下载镜像

    文章首发个人网站: https://www.exception.site/docker/docker-pull-image 本文中,我们将需要学习 Docker 如何下载镜像? 一.前言 大家都知道, ...

  7. Docker Kubernetes 命令行创建容器

    Docker Kubernetes 命令行创建容器 环境: 系统:Centos 7.4 x64 Docker版本:18.09.0 Kubernetes版本:v1.8 管理节点:192.168.1.79 ...

  8. docker下载镜像

    注意:必须先搜索镜像,否则有时候无法下载 Docker下载Redis镜像并运行容器 .搜索查找镜像 docker search redis .下载镜像 docker pull redis:latest ...

  9. docker 复制镜像和复制容器

    复制镜像和复制容器都是通过保存为新镜像而进行的. 具体为: 保存镜像 docker save ID > xxx.tar docker load < xxx.tar 保存容器 docker ...

随机推荐

  1. js运行原理

    https://www.youtube.com/watch?v=8aGhZQkoFbQ

  2. 腾讯这套SpringMVC面试题你懂多少(面试题和答案)

    1.什么是 SpringMvc? 答:SpringMvc 是 spring 的一个模块,基于 MVC 的一个框架,无需中间整合层来整 2.Spring MVC 的优点: 答:1)它是基于组件技术的.全 ...

  3. final finalize finally throw throws try catch

    什么是finalize()方法 finalize()方法什么时候被调用 参见网址 析构函数(finalization)的目的是什么 final 和 finalize 的区别 final以下参见网址 f ...

  4. 二进制方式安装mysql

    下载官方打包好的rpm的集合 https://downloads.mysql.com/archives/get/file/mysql-5.7.20-1.el7.x86_64.rpm-bundle.ta ...

  5. 使用js如何获取treeview控件的当前选中的节点

    var selectedNodeID = theForm.elements["<%=treeView1.ClientID%>_SelectedNode"].value; ...

  6. 用 Python 解答两道来自阿里伯乐系统的笔试题

    目录 目录 前言 题目一 分析 实现 题目二 分析 实现 前言 朋友到阿里面试,分享两道小题,博主比较闲就试着用 Python 解答一下,实现方式肯定是多种多样的,优劣也会各有不同,欢迎交流. 题目一 ...

  7. 红帽虚拟化RHEV-安装RHEV-M

    目录 目录 前言 软件环境 时间同步 更新系统 安装并配置RHEV-M 添加域并为用户授权远程登陆 安装rhevm报告 安装Spice协议 最后 前言 在红帽虚拟化RHEV-架构简介篇中介绍了RHEV ...

  8. java8 stream编程

    说明:这是基于同事的培训材料做的练习,记录下来,以作日后自己coding分析和改进 1.准备 pom.xml <dependency> <groupId>org.apache. ...

  9. 【Spring】---【IOC入门案例】

    第一步:导入Jar包 第二步:创建类,在类里面创建方法 public class User { public void add(){ System.out.println("-------- ...

  10. yield(),sleep()以及wait()的区别

    往往混淆了这三个函数的使用. 从操作系统的角度讲,os会维护一个ready queue(就绪的线程队列).并且在某一时刻cpu只为ready queue中位于队列头部的线程服务. 但是当前正在被服务的 ...