欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Docker 安装Tomcat / ElasticSearch 镜像分层原理

程序员文章站 2022-04-18 21:26:34
...

Tomcat

一般用--rm进行测试,用完就会删除

docker run -it --rm tomcat:9.0
docker pull tomcat:9.0

docker run -d -p 8080:8080 --name mytomcat tomcat

测试访问
hadoop101:8080

出现404进入容器
docker exec -it mytomcat /bin/bash

webapps下目录为空,将webapps.dist中文件复制到webapps中
cp -r webapps.dist/* ./webapps

阿里云镜像默认最小镜像,不必要的都删除,只保证最小可运行环境。

镜像原理分层

  • 所有的镜像在下载时都是分层下载的
  • 更新旧版本时只是对旧版本的层进行更改
  • 当有多个镜像存在交叉的层级时,不需要重新下载,只需下载自己的层级
  • 自己对镜像中文件进行更改时,只是在原来的增加上增加了新的层级,并没有对镜像本身的原始文件进行更改

tomcat的原始文件webapps下没有文件,通过复制webapps.dist中的文件

提交docker镜像版本类似git中的commit
docker commit 
-a 作者
-m message 提交信息

docker commit -a "chai" -m "add webapps pages" 94ae36cabf71 mytomcat:1.0

通过commit命令添加更新,查看docker images 会发现镜像中生成新的版本,已有就可以使用更改过的镜像

Docker 安装Tomcat / ElasticSearch 镜像分层原理

ElasticSearch

docker pull elasticsearch
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch

docker stats 查看容器内存占用

ES会占用大量内存
Docker 安装Tomcat / ElasticSearch 镜像分层原理
修改指令增加内存限制ES_JAVA_OPTS

docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m"  elasticsearch

Docker 安装Tomcat / ElasticSearch 镜像分层原理

启动ES

Docker 安装Tomcat / ElasticSearch 镜像分层原理