在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. esLint——规范你的代码(转)

    团队协作时,若是团队的代码风格统一,能够大大减少沟通成本. 什么是 ESLint ? ESLint 是在 ECMAScript/JavaScript 代码中识别和报告模式匹配的工具,它的目标是保证代码 ...

  2. 20175221 《Java程序设计》第10周学习总结

    20175221   <Java程序设计>第10周学习总结 教材学习内容总结 第十二章主要内容有: 进程与线程 进程是程序的一次动态执行过程,它对应了从代码加载.执行至执行完毕的一个完整过 ...

  3. bootstrap-table export导出问题

    引入方式如上图,首先是,bootstrap.min.js,其他 Bootstrap Table 官网 bootstrap-table.min.js  // 表格 bootstrap-table-zh- ...

  4. Java中String类中常用的方法

    1.字符串与字符数组的转换 用toCharArray()方法将字符串变为字符数组 String str = "abcdef"; char c[] = str.tocharArray ...

  5. 第五周课程总结&试验报告

    this和super的区别 区别点 this super 属性访问 访问同类中的属性,如果本类没有此属性则从父类中继续查找 访问父类中的属性 方法 访问本类中的方法,如果本类中没有此方法,则从父类中继 ...

  6. 利用Lucene.net搜索引擎进行多条件搜索的做法

    利用Lucene.net搜索引擎进行多条件搜索的做法 2018年01月09日 ⁄ 搜索技术 ⁄ 共 613字 ⁄ 字号 小 中 大 ⁄ 评论关闭 利用Lucene.net搜索引擎进行多条件搜索的做法 ...

  7. c语言中static关键字用法详解

    个人总结: 1.C不是面向对象的,在c中static修饰的变量或函数仅在当前文件中使用 2.C可以对局部变量使用static修饰(注意面向对象的java则不行),其放在全局区一直存在 概述static ...

  8. flask环境布署--废弃不用,只留作备份

    [前置条件] 创建1个flask-demo,生成requirement.txt文件(下载好gunicorn),上传至git.创建demo参照:创建一个flask api-demo(响应体显示中文) g ...

  9. Stream的并行计算

    一.Stream并行计算体验,利用多核加快计算速度 stream的并发,多个cpu执行同一个任务,提高效率: 需求:从1+...+10000000,看下各种计算方法的运行时间是多少 代码例子如下: p ...

  10. FireMonkey 绘图(1)

    FireMonkey 绘图(1) FMX 的 Canvas 在不同的系统上会分别使用:WinVista.Win7: D2D (FMX.Canvas.D2D.pas)WinXP: GDI+ (FMX.C ...