Docker 部署Nginx

  1. docker pull nginx
  2. docker run --name nginx -d -p 3344:80 nginx:latest

-d 后台
—name 容器名称
-p 宿主端口:内部端口
-v 数据卷 地址映射,容器内外部互通

  1. # 进入交互模式
  2. docker exec -it nginx /bin/bash

image.png
curl localhost:3344 测试端口是否通
nginx 默认内部端口80
3344 如果是对外的,外网就可以访问

Docker 部署Tomcat

https://registry.hub.docker.com/_/tomcat

  1. docker run -it --rm tomcat:9.0
  2. --rm 设置-d 后,--rm 删除 启动之后,用完即删除(容器),docker ps -a 没有该容器
  1. docker run -d -p 3355:8080 --name tomcat tomcat
  2. # 本地即使有tomcat:9.0,它也会拉取最新的镜像tomcat:latest

容器中Linux命令减少的原因:阿里云镜像的原因,默认是最小的镜像,保证最小可运行环境,把不必要的都剔除掉。

Docker 部署ES+kibana

es 暴露端口很多
消耗内存(表现的docker ps 很慢):如何解决
数据需要挂在挂载

  1. --net 网络配置
  2. -e 设置环境变量
  3. docker run -d --name elasticsearch --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:tagiscovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.15.2

curl 测试命令
image.png
docker stats 查看CPU状态 ES占用1.2G,占比72左右
image.png

  1. # 增加ES内存限制 设置Xms和Xmx 最大最小占用内存
  2. docker run -d --name elasticsearch --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms50m -Xmx500m"elasticsearch:tagiscovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.15.2

kibana 网络原理
kibana 如何连接部署好的elasticsearch