专栏首页cookilyDocker安装官方tomcat 镜像 阿里云tomcat镜像 的简单使用 实践笔记

Docker安装官方tomcat 镜像 阿里云tomcat镜像 的简单使用 实践笔记


title: Docker安装官方tomcat 镜像 阿里云tomcat镜像 的简单使用 实践笔记 categories: [Docker,Tomcat,Centos 7] tags: [Docker,Tomcat,Centos 7]

参考:docker tomcat 官方文档

挂在github上的个人博客:由hexo强力驱动 个人博客

1.首先查看下仓库镜像

docker search tomcat
[root@k8s~]# docker search tomcat
NAME                                  DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
tomcat                                Apache Tomcat is an open source implementati…   1710                [OK]                
dordoka/tomcat                        Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 base…   47                                      [OK]
tomee                                 Apache TomEE is an all-Apache Java EE certif…   44                  [OK]                
davidcaste/alpine-tomcat              Apache Tomcat 7/8 using Oracle Java 7/8 with…   24                                      [OK]
consol/tomcat-7.0                     Tomcat 7.0.57, 8080, "admin/admin"              17                                      [OK]
cloudesire/tomcat                     Tomcat server, 6/7/8                            15                                      [OK]
bitnami/tomcat                        Bitnami Tomcat Docker Image                     10                                      [OK]
meirwa/spring-boot-tomcat-mysql-app   a sample spring-boot app using tomcat and My…   8                                       [OK]
tutum/tomcat                          Base docker image to run a Tomcat applicatio…   8                                       
jeanblanchard/tomcat                  Minimal Docker image with Apache Tomcat         8                                       
aallam/tomcat-mysql                   Debian, Oracle JDK, Tomcat & MySQL              6                                       [OK]
maluuba/tomcat7-java8                 Tomcat7 with java8.                             1                                       
99taxis/tomcat7                       Tomcat7                                         1                                       [OK]
primetoninc/tomcat                    Apache tomcat 8.5, 8.0, 7.0                     1                                       [OK]
picoded/tomcat7                       tomcat7 with jre8 and MANAGER_USER / MANAGER…   0                                       [OK]
oobsri/tomcat8                        Testing CI Jobs with different names.           0                                       
s390x/tomcat                          Apache Tomcat is an open source implementati…   0                                       
fabric8/tomcat-8                      Fabric8 Tomcat 8 Image                          0                                       [OK]
trollin/tomcat                                                                        0                                       
awscory/tomcat                        tomcat                                          0                                       
swisstopo/service-print-tomcat        backend tomcat for service-print "the true, …   0                                       
qminderapp/tomcat7                    Tomcat 7                                        0                                       
hegand/tomcat                         docker-tomcat                                   0                                       [OK]
buravelli9/tomcat-az-standards        Tomcat image-AZ                                 0                                       

2.然后从hub.docker.com或者第三方有加速的docker网站查看tomcat镜像版本

阿里云tomcat docker镜像连接

7.0.82-jre7, 7.0-jre7, 7-jre7, 7.0.82, 7.0, 7 (7/jre7/Dockerfile)
7.0.82-jre7-alpine, 7.0-jre7-alpine, 7-jre7-alpine, 7.0.82-alpine, 7.0-alpine, 7-alpine (7/jre7-alpine/Dockerfile)
7.0.82-jre8, 7.0-jre8, 7-jre8 (7/jre8/Dockerfile)
7.0.82-jre8-alpine, 7.0-jre8-alpine, 7-jre8-alpine (7/jre8-alpine/Dockerfile)
8.0.47-jre7, 8.0-jre7, 8.0.47, 8.0 (8.0/jre7/Dockerfile)
8.0.47-jre7-alpine, 8.0-jre7-alpine, 8.0.47-alpine, 8.0-alpine (8.0/jre7-alpine/Dockerfile)
8.0.47-jre8, 8.0-jre8 (8.0/jre8/Dockerfile)
8.0.47-jre8-alpine, 8.0-jre8-alpine (8.0/jre8-alpine/Dockerfile)
8.5.24-jre8, 8.5-jre8, 8-jre8, jre8, 8.5.24, 8.5, 8, latest (8.5/jre8/Dockerfile)
8.5.24-jre8-alpine, 8.5-jre8-alpine, 8-jre8-alpine, jre8-alpine, 8.5.24-alpine, 8.5-alpine, 8-alpine, alpine (8.5/jre8-alpine/Dockerfile)
9.0.2-jre8, 9.0-jre8, 9-jre8, 9.0.2, 9.0, 9 (9.0/jre8/Dockerfile)
9.0.2-jre8-alpine, 9.0-jre8-alpine, 9-jre8-alpine, 9.0.2-alpine, 9.0-alpine, 9-alpine (9.0/jre8-alpine/Dockerfile)

3.我选择8.5.24版本下载

docker pull tomcat:8.5.24
[root@k8s~]# docker pull tomcat:8.5.24
8.5.24: Pulling from library/tomcat
723254a2c089: Pull complete 
abe15a44e12f: Pull complete 
409a28e3cc3d: Pull complete 
a9511c68044a: Pull complete 
9d1b16e30bc8: Pull complete 
0fc5a09c9242: Pull complete 
d34976006493: Pull complete 
3b70003f0c10: Pull complete 
bc7887582e2e: Pull complete 
d2ab4f165865: Pull complete 
f671595c8b4b: Pull complete 
cc8cdb15e511: Pull complete 
Digest: sha256:e39e0a3982b6de106d95b4e06d6e94fdc5ec7d6cadf310f7fae02e4e182cd830
Status: Downloaded newer image for tomcat:8.5.24

4.查看本地镜像 可以看到已经在本地仓库

docker images
[root@k8s~]# docker images
REPOSITORY                                     TAG                 IMAGE ID            CREATED             SIZE
tomcat                                         8.5.24              66bbed06c8cd        2 weeks ago         557MB

5.开启tomcat一个容器(就是我们平常所说的实例)

docker run --name tomcat8.5.24 -d -v /etc/localtime:/etc/localtime:ro -p 8080:8080 tomcat:8.5.24
[root@k8s~]# docker run --name tomcat8.5.24 -d -v /etc/localtime:/etc/localtime:ro -p 8080:8080 tomcat:8.5.24
432bd371973ffb651083142f79913b675a8c400a7d011e7a5d3b4f70817f25b2

[root@k8s~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
432bd371973f        tomcat:8.5.24       "catalina.sh run"        56 seconds ago      Up 54 seconds       0.0.0.0:8080->8080/tcp   tomcat8.5.24

-v /etc/localtime:/etc/localtime:ro 设置容器的时间与宿主机同步 –name tomcat8.5.24 :添加备注名 -p 8080:8080 :实体机的8080端口映射容器的8080 docker ps :查看正在运行的容器

6.tomcat远程访问

外网地址:8080 如果是阿里云esc服务器,安全组8080端口要开放

7.如果是在同一个docker下的容器要连接tomcat

7.1别名访问 比如tomcat2连接tomcat1,那tomcat2的启动参数里要加–link连接

docker run -d -v /etc/localtime:/etc/localtime:ro --name tomcat1 tomcat:8.5.24
docker run -d -v /etc/localtime:/etc/localtime:ro --name tomcat2 --link tomcat1:tomcat1_随意别名 tomcat:8.5.24
在tomcat2容器里的tomcat连接地址就写为-->别名:8080
比如:http://192.168.123.123:8080
就写为:http://tomcat1_随意别名:8080

7.2内网ip访问(相当于局域网访问) 获取tomcat容器内网ip地址

docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' tomcat8.5.24
[root@k8s~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
432bd371973f        tomcat:8.5.24       "catalina.sh run"        12 minutes ago      Up 12 minutes       0.0.0.0:8080->8080/tcp   tomcat8.5.24
1794aed7cfe1        mysql:5.6.38        "docker-entrypoint.s…"   3 hours ago         Up About an hour    0.0.0.0:3306->3306/tcp   mysql5.6.38
[root@k8s~]# docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 1794aed7cfe1
172.17.0.3

获取tomcat容器内网ip地址也可以使用管道过滤

docker inspect 1794aed7cfe1 | grep IPAddress
[docker@k8s~]# docker inspect 1794aed7cfe1|grep IPAddress
            "SecondaryIPAddresses": null,
            "IPAddress": "172.17.0.3",
                    "IPAddress": "172.17.0.3"
在tomcat容器里的mysql连接地址就写为:内网ip
比如:jdbc:mysql://192.168.123.123:3306
jdbc:mysql://172.17.0.3:3306

8.进入tomcat容器

docker exec -it 容器名字或者id /bin/bash
[root@k8s~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
432bd371973f        tomcat:8.5.24       "catalina.sh run"        38 minutes ago      Up 38 minutes       0.0.0.0:8080->8080/tcp   tomcat8.5.24

[root@k8s~]# docker exec -it 432bd371973f /bin/bash
root@432bd371973f:/usr/local/tomcat# 

拿到shell,收工

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • docker安装官方redis集群并集群连接测试 的正确姿势 自用 实践笔记

    没装docker的同学,请移步【Centos 7 安装最新 Docker 的正确姿势 并实现阿里云加速 网易加速 实践笔记】的文章 没装docker-comp...

    cookily
  • Docker安装官方Redis镜像并启用密码认证 实践笔记

    cookily
  • windows server 2012 r2 搭建文件服务器 问题记录 自用 实践笔记

    进入msdn选择你想要的版本 我这边以windows server 2012 r2版本为例

    cookily
  • trunk push后找不到自己的库

    程序员不务正业
  • Spring MVC或Spring Boot配置默认访问页面不生效?

    相信在开发项目过程中,设置默认访问页面应该都用过。但是有时候设置了却不起作用。你知道是什么原因吗?今天就来说说我遇到的问题。

    格姗知识圈
  • 在请求目标中找到无效字符。有效字符在RFC 7230和RFC 3986中定义

      今天在使用Tomcat8部署完成项目做测试的时候,发现有的接口会报错400,后端提示在请求目标中找到无效字符。有效字符在RFC 7230和RFC 3986中...

    彼岸舞
  • 苹果机器学习开发日记:如何设计能在Apple Watch上实时运行的中文手写识别系统

    AI 科技评论按:随着苹果机器学习日记(Apple ML Journal)的开放,苹果分享出的设计自己产品、运用机器学习解决问题的故事也越来越多。近日苹果在上面...

    AI科技评论
  • 深度学习识别10000物种,手机上的@博物杂志

    【新智元导读】iNaturalist 推出一个识别动物和植物物种的app,使用TensorFlow训练神经网络,已经能够识别出超过10000种不同的物种,而且每...

    新智元
  • 数据结构与算法之栈

    栈是一种操作受限的数据结构,只支持入栈和出栈操作。 典型的“栈”结构:后进者先出,先进者后出。 从栈的操作特性上来看,栈是一种“操作受限”的线性表,只允许在...

    居士
  • Linux sort命令简介

    用sort对文件排序,发现这个命令比想象中要复杂和强大,仔细研究了一下文档,记录一下。

    猿哥

扫码关注云+社区

领取腾讯云代金券