docker_3 docker 部署练习

本文介绍了如何使用Docker部署Nginx、Tomcat和Elasticsearch。通过下载镜像、启动容器并设置端口映射,实现了服务的本地和外网访问。在部署Elasticsearch时,由于内存限制,需要调整容器的内存使用。同时,提到了Portainer可视化面板的安装,以方便容器管理和监控。
摘要由CSDN通过智能技术生成

https://gitee.com/fakerlove/docker

3. docker 部署练习

3.1 部署 nginx

# 下载 nginx 镜像
[root@izbp10tup89om84qulgxbsz ~]# docker pull nginx

# 启动 nginx 镜像
# -d		表示后台运行
# --name	给容器命名
# -p		暴露端口	格式:宿主机端口:容器内部端口
[root@izbp10tup89om84qulgxbsz ~]# docker run -d --name nginx01 -p:3344:80 nginx

# 本机测试连接(出现 Welcome to nginx! 即表示连接成功)
[root@izbp10tup89om84qulgxbsz ~]# curl localhost:3344

外网测试连接:
在这里插入图片描述

# 查看容器
[root@izbp10tup89om84qulgxbsz ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
061942db0498        nginx               "/docker-entrypoint.…"   20 minutes ago      Up 20 minutes       0.0.0.0:3344->80/tcp   nginx01

# 进入 nginx 容器
[root@izbp10tup89om84qulgxbsz ~]# docker exec -it nginx01 /bin/bash
root@061942db0498:/# 

# 在容器中查找 nginx 配置文件
root@061942db0498:/# whereis nginx 
nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx

# 退出容器
root@061942db0498:/# exit
exit

# 停止容器
[root@izbp10tup89om84qulgxbsz ~]# docker stop 061942db0498
061942db0498

3.2 部署 tomcat

# 下载镜像
[root@izbp10tup89om84qulgxbsz ~]# docker pull tomcat

# 查看本地镜像
[root@izbp10tup89om84qulgxbsz ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tomcat              latest              dab3cf97dd54        4 days ago          648MB

# 启动镜像
[root@izbp10tup89om84qulgxbsz ~]# docker run -d -p 3355:8080 tomcat01 tomcat

# 本地访问
[root@izbp10tup89om84qulgxbsz ~]# curl localhost:3355
<!doctype html><html lang="en"><head><title>HTTP Status 404 – Not Found</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP Status 404 – Not Found</h1><hr class="line" /><p><b>Type</b> Status Report</p><p><b>Description</b> The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.</p><hr class="line" /><h3>Apache Tomcat/9.0.39</h3></body></html>\

外网测试访问(连接成功,但是报404,因为这个 tomcat 是被阉割的):

3.3 部署 elastic search

# 下载运行elasticsearch镜像
[root@izbp10tup89om84qulgxbsz ~]# docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2

# 发现并没有成功运行(原因是elastsearch极耗内存,而我的服务器内存不够)
[root@izbp10tup89om84qulgxbsz /]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

# 如果你和我一样,服务器内存不够用,建议使用下面的命令限制内存启动 elasticsearch
[root@izbp10tup89om84qulgxbsz ~]# docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.6.2

# 启动后可以使用如下命令查看容器的内存占用情况:
[root@izbp10tup89om84qulgxbsz /]# docker stats 784a6bb21c2d
CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
784a6bb21c2d        elasticsearch       0.39%               359.9MiB / 1.796GiB   19.57%              0B / 0B             265MB / 696kB       42

# 本地访问es
[root@izbp10tup89om84qulgxbsz /]# curl localhost:9200

  • (补充)Portainer 可视化面板的安装:
# 下载并运行 Portainer
docker run -d -p 8088:9000 \
--restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
# 内网访问(会很快)
[root@izbp10tup89om84qulgxbsz /]# curl localhost:8088

外网访问8088端口(第一次访问会非常非常慢):

在这里插入图片描述
第一次访问,需要添加用户名和密码:
在这里插入图片描述
在这里插入图片描述
看看就好,反正不好用:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值