Docker教程(3)—Docker安装Tomcat,Nginx与可视化管理工具Portainer的安装和使用

举报
AlbertYang 发表于 2021/02/02 23:32:30 2021/02/02
6.2k+ 0 0
【摘要】 前面我们讲了Docker的安装使用,以及一些常用的命令。俗话说只说不练假把式,接下来我们使用Docker安装一些常用的镜像Tomcat, Nginx,练习一下Docker命令的使用。同时学习一下Docker可视化图形管理工具Portainer的安装与使用。   一. 安装Tomcat 1.1 查找镜像 在Docker Hub 上查找 Tomcat 镜像,我们可以通...

前面我们讲了Docker的安装使用,以及一些常用的命令。俗话说只说不练假把式,接下来我们使用Docker安装一些常用的镜像Tomcat, Nginx,练习一下Docker命令的使用。同时学习一下Docker可视化图形管理工具Portainer的安装与使用。

一. 安装Tomcat

1.1 查找镜像

Docker Hub 上查找 Tomcat 镜像,我们可以通过 Sort by 查看不同版本的 tomcat,默认的是最新版本 tomcat:latest

除此之外,我们还可以使用用 docker search tomcat 命令来查看tomcat可用版本。


      [root@albert ~]# docker search tomcat
      NAME DESCRIPTION STARS OFFICIAL AUTOMATED
      tomcat Apache Tomcat is an open source implementati…   2883 [OK]
      tomee Apache TomEE is an all-Apache Java EE certif…   84 [OK]
      dordoka/tomcat Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 base…   55 [OK]
      bitnami/tomcat Bitnami Tomcat Docker Image 36 [OK]
      kubeguide/tomcat-app Tomcat image for Chapter 1 29
      consol/tomcat-7.0 Tomcat 7.0.57, 8080, "admin/admin" 17 [OK]
      cloudesire/tomcat Tomcat server, 6/7/8 15 [OK]
      aallam/tomcat-mysql Debian, Oracle JDK, Tomcat & MySQL 13 [OK]
      arm32v7/tomcat Apache Tomcat is an open source implementati…   10
      maluuba/tomcat7-java8 Tomcat7 with java8. 6
      rightctrl/tomcat CentOS , Oracle Java, tomcat application ssl…   6 [OK]
      arm64v8/tomcat Apache Tomcat is an open source implementati…   3
      jelastic/tomcat An image of the Tomcat Java application serv…   2
      amd64/tomcat Apache Tomcat is an open source implementati…   2
      cfje/tomcat-resource Tomcat Concourse Resource 2
      99taxis/tomcat7 Tomcat7 1 [OK]
      oobsri/tomcat8 Testing CI Jobs with different names. 1
      camptocamp/tomcat-logback Docker image for tomcat with logback integra…   1 [OK]
      chenyufeng/tomcat-centos tomcat基于centos6的镜像 1 [OK]
      ppc64le/tomcat Apache Tomcat is an open source implementati…   1
      appsvc/tomcat 1
      secoresearch/tomcat-varnish   Tomcat and Varnish 5.0 0 [OK]
      s390x/tomcat Apache Tomcat is an open source implementati…   0
      softwareplant/tomcat Tomcat images for jira-cloud testing 0 [OK]
      picoded/tomcat7 tomcat7 with jre8 and MANAGER_USER / MANAGER…   0 [OK]
      [root@albert ~]# 
  
 

1.2 下载镜像

我们可以使用上篇文章使用到的docker pull命令下载Tomcat镜像,此处我们下载最新版本

[root@albert ~]# docker pull tomcat
 

下载完成后,我们就可以在本地镜像列表里看到 tomcat 的镜像了。


      [root@albert ~]# docker images
      REPOSITORY TAG IMAGE ID CREATED SIZE
      tomcat latest e0bd8b34b4ea 12 days ago 649MB
      [root@albert ~]#
  
 

1.3 运行Tomcat镜像

[root@albert ~]# docker run -d --name tomcatTest -p 8080:8080 tomcat
 

参数说明:

-d 后台运行

--name 给容器起一个名字

-p 8080:8080:将主机的 8080 端口映射到容器的 8080 端口。(主机端口:容器内部端口)

上图描述了通过浏览器访问到Tomcat的过程,如果在本地能访问,在浏览器不能访问,可以根据上述过程查找问题。

1.4 测试Tomcat是否成功运行

1.4.1 本地测试

[root@albert ~]# curl localhost:8080
 

1.4.2 浏览器测试

由于官方镜像是简化版的,tomcat自带的一些页面已经被删除,所以此处才会出现404页面,能出现404页面说明tomcat已经启动成功。

1.5 停止运行


      [root@albert ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      1f63040bbf5b tomcat "catalina.sh run"   13 minutes ago Up 13 minutes 0.0.0.0:8080->8080/tcp   tomcatTest
      [root@albert ~]# docker stop 1f63040bbf5b
      1f63040bbf5b
      [root@albert ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      [root@albert ~]#
  
 

二. 安装Nginx

2.1 查找镜像

Docker Hub 上查找 Nginx 镜像,我们可以通过 Sort by 查看不同版本的 Nginx,默认的是最新版本 Nginx:latest

2.2 下载镜像

我们可以使用上篇文章使用到的docker pull命令下载nginx镜像,此处我们下载最新版本

[root@albert ~]# docker pull nginx
 

下载完成后,我们就可以在本地镜像列表里看到 nginx的镜像了。


      [root@albert ~]# docker images
      REPOSITORY TAG IMAGE ID CREATED SIZE
      nginx latest bc9a0695f571 10 days ago 133MB
      tomcat latest e0bd8b34b4ea 2 weeks ago 649MB
      [root@albert ~]#
  
 

2.3 运行Nginx镜像

[root@albert ~]# docker run -d --name nginxTest -p 8088:80 nginx
 

参数说明:

-d 后台运行

--name 给容器起一个名字

-p 8088:80:将主机的 8088 端口映射到容器的 80 端口。(主机端口:容器内部端口)

2.4 测试Nginx是否成功运行

2.4.1 本地测试


      [root@albert ~]# curl localhost:8088
      <!DOCTYPE html>
      <html>
      <head>
      <title>Welcome to nginx!</title>
      <style>
       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@albert ~]#
  
 

2.4.2 浏览器测试

2.5 停止运行


      [root@albert ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      1fa4c26390a6 nginx "/docker-entrypoint.…"   7 minutes ago Up 7 minutes 0.0.0.0:8088->80/tcp   nginxTest
      [root@albert ~]# docker stop 1fa4c26390a6
      1fa4c26390a6
      [root@albert ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      [root@albert ~]#
  
 

三. 可视化图形工具Portainer

Portainer是一个免费的Docker图形化界面管理工具,利用Portainer可以轻松构建,管理和维护Docker环境(Docker 主机或 Swarm 群集)。

3.1 安装Portainer

官网: https://www.portainer.io/


      [root@albert ~]# docker volume create portainer_data
      portainer_data
      [root@albert ~]# docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
      Unable to find image 'portainer/portainer-ce:latest' locally
      latest: Pulling from portainer/portainer-ce
      d1e017099d17: Pull complete b0718b1ef1b0: Pull complete Digest: sha256:0ab9d25e9ac7b663a51afc6853875b2055d8812fcaf677d0013eba32d0bf0e0d
      Status: Downloaded newer image for portainer/portainer-ce:latest
      bc569d37b6ed8ccbbb18456e825018ae5fbe1bf7fb38f9bc1bf058c9f48a70c9
      [root@albert ~]#
  
 

注意:端口9000是Portainer用于UI访问的常规端口。EDGE代理仅将端口8000用于反向隧道功能。如果您不打算使用边缘代理,则不需要公开端口8000。

3.2 通过浏览器访问

http://你的服务器IP:9000/

3.2.1 设置用户名和密码

3.2.2 选择连接到Docker

3.2.3 查看主机信息

3.2.4 管理镜像

3.2.5 管理容器

剩下的功能大家自己去探索吧,我就不在这里举例了。

今天的学习就到这里了,由于本人能力和知识有限,如果有写的不对的地方,还请各位大佬批评指正。如果想继续学习提高,欢迎关注我,每天学习进步一点点,就是领先的开始,加油。如果觉得本文对你有帮助的话,欢迎转发,评论,点赞!!!

文章来源: albertyang.blog.csdn.net,作者:Albert Yang,版权归原作者所有,如需转载,请联系作者。

原文链接:albertyang.blog.csdn.net/article/details/110455239

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。