Docker上部署Nignx、Tomcat、es和portainer

docker上部署应用

  • 部署Nginx

1、搜索镜像 docker search nginx 建议上官网搜索具体版本下载

2、下载镜像 docker pull nginx

3、运行测试

# 流程

[root@kuangshen home]# docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
a2abf6c4d29d: Pull complete 
a9edb18cadd1: Pull complete 
589b7251471a: Pull complete 
186b1aaa4aa6: Pull complete 
b4df32aa5a72: Pull complete 
a0bcbecc962e: Pull complete 
Digest: sha256:0d17b565c37bcbd895e9d92315a05c1c3c9a29f762b011a10c54a66cd53c9b31
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest
[root@kuangshen home]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
nginx        latest    605c77e624dd   4 months ago   141MB
centos       latest    5d0da3dc9764   7 months ago   231MB

# -d 后台运行
# --name 给容器命名
# -p 宿主机端口,容器内部端口
[root@kuangshen home]# docker run -d --name nginx01 -p 3344:80 nginx
0dbf3d55855076fbd274764d804238d34f72e6380692aa560d31111a1ac526b6
[root@kuangshen home]# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS         PORTS                                   NAMES
0dbf3d558550   nginx     "/docker-entrypoint.…"   10 seconds ago   Up 9 seconds   0.0.0.0:3344->80/tcp, :::3344->80/tcp   nginx01
[root@kuangshen home]# curl localhost:3344
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

# 进入容器
[root@kuangshen home]# docker exec -it nginx01 /bin/bash
root@0dbf3d558550:/# whereis nginx
nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx
root@0dbf3d558550:/# cd /etc/nginx 
root@0dbf3d558550:/etc/nginx# ls
conf.d	fastcgi_params	mime.types  modules  nginx.conf  scgi_params  uwsgi_params
root@0dbf3d558550:/etc/nginx# 

端口暴露的概念

image-20220512211022720

  • 部署Tomcat
# 官方的使用
docker run -it --rm tomcat:9.0

# 我们之前的启动都是后台,停止了容器之后,容器还是可以查到 
# docker run -it --rm	一般用来测试,用完即删

# 下载再启动
docker pull tomcat

# 启动运行
[root@kuangshen home]# docker run -d -p 3355:8080 --name tomcat01 tomcat

# 测试访问没有问题

# 进入容器
[root@kuangshen home]# docker exec -it tomcat01 /bin/bash

# 发现问题:1、linux命令少了, 2、没有webapps。 阿里云镜像的原因,默认是最小的镜像,所有不必要的都剔除掉
# 保证最小可运行的环境!

  • 部署ES + Kibana
# es 暴露的端口很多
# es 十分的耗内存
# es 的数据一般需要放置到安全目录!挂载
# --net somenetwork ? 网络配置

# 启动 elasticsearch
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2

# 启动了 linux就卡住了	docker stats 查看 cpu 的状态

# 查看 docker stats

# 测试一下es是否成功了
[root@kuangshen ~]# curl localhost:9200
{
  "name" : "13bf3491fc38",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "ITQFoOchS_mr0CfFEh-jBA",
  "version" : {
    "number" : "7.6.2",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",
    "build_date" : "2020-03-26T06:34:37.794943Z",
    "build_snapshot" : false,
    "lucene_version" : "8.4.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

# 赶紧关闭,增加内存的限制

image-20220513001326797

# 赶紧关闭,增加内存的限制 . 修改配置文件 -e 环境配置修改

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

# 查看 docker stats

image-20220513002056301

[root@kuangshen ~]# curl localhost:9200
{
  "name" : "b49b797cc859",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "wm-1lL7XRhu3KHrmIKO9qQ",
  "version" : {
    "number" : "7.6.2",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",
    "build_date" : "2020-03-26T06:34:37.794943Z",
    "build_snapshot" : false,
    "lucene_version" : "8.4.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

使用kibana连接es ? 思考网络如何才能连接过去!

image-20220513002500417

可视化
  • portainer (先用这个)
docker run -d -p 8088:9000 \
--restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
  • Rancher(CI/CD再用)
什么是portainer

Docker图像化界面管理工具!提供一个后台面板供我们操作!

docker run -d -p 8088:9000 \
--restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值