4- docker练习
- 假设你使用的是阿里云服务器,你需要先开启某个端口的访问(例如这里选择3344与3355端口做测试):
ecs控制台 -> 安全组 ->实例管理 -> 安全组详情 -> 入方向
4.1 部署nginx
1 | 搜索nginx |
4.2 部署tomcat
1 | 之前启动都是后台,停止容器之后容器还是可以查到。--rm一般用来测试,用完就删除容器 |
发现浏览器输入:
ip:3355
虽然访问成功,但是没有主页内容。1
2docker exec -it tomcat01 /bin/bash
ll发现
ll
命令无法使用。这是因为docker这里用的是阉割版的linux同时,tomcat01容器中
/usr/local/tomcat/webapps
里面为空导致主页没有内容。这是阿里云镜像的原因。默认是最小的镜像,所有不必要的都要剔除掉,保证最小可运行的环境。将webapps.dist里面的内容放到webapps就好了:
1
cp -r webapps.dist/* webapps
1 | exit |
4.3 部署ES+Kibana
- 一些需要注意的:
- es暴露的端口很多
- es十分耗内存
- es的数据一般需要放置到安全目录(挂载)
- 启动elasticsearch(内存占用较大,如果你的服务器配置较差,会卡住一段时间)
1 | docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2 |
发现linux很卡
1
2docker stats #查看cpu状态
docker stop elasticsearch限制内存使用
1
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xms512m" elasticsearch:7.6.2
使用Kibana连接es,网络如何才能连接过去?