`
baobeituping
  • 浏览: 1041033 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Docker实践-安装Docker并在容器里运行tomcat

阅读更多

 

tomcat运行环境


1、搜索Docker Hub里的tomcat镜像

docker search tomcat
  • 1
  • 部分搜索结果如下
  1.  
    NAME DESCRIPTION STARS OFFICIAL AUTOMATED
  2.  
    tomcat Apache Tomcat is an open source implementa... 1132 [OK]
  3.  
    dordoka/tomcat Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 ba... 29 [OK]
  4.  
    cloudesire/tomcat Tomcat server, 6/7/8 12 [OK]
  5.  
    davidcaste/alpine-tomcat Apache Tomcat 7/8 using Oracle Java 7/8 wi... 11 [OK]
  6.  
    andreptb/tomcat Debian Jessie based image with Apache Tomc... 6 [OK]

这里写图片描述

上面 “7.0.73-jre7, 7.0-jre7, 7-jre7, 7.0.73, 7.0, 7”等等 是这个tomcat库支持的tag(标签),这里我们选用的是 “7” 这个标签

2、拉取Docker Hub里的镜像

docker pull tomcat:7
  • 1

3、拉取完成后查看本地的镜像

  1.  
    docker images #所有镜像
  2.  
    docker image tomcat:7 #查看REPOSITORY为tomcat:7的镜像
  • 1
  • 2

4、运行tomcat镜像

docker run tomcat:7
  • 1

可以访问 http://ip:8080 确认容器的tomcat已启动成功

  • 使用以下命令来查看正在运行的容器
docker ps
  • 1
  • 若端口被占用,可以指定容器和主机的映射端口
docker run -p 8081:8080 tomcat:7 
如果想后台运行tomcat
docker run -d -p 8081:8080 tomcat
  • 启动后,访问地址是http://ip:8081(初始安装的dockerip地址默认:192.168.99.100)

5、运行我们的web应用

假设我们应用是www,目录位置在/app/deploy/www

我是基于在windows平台

第一种方式直接拷贝不采取挂载的形式。这种方案。每次重启docker就没有文件了。
首先拷贝程序
docker cp job.war [容器的id]:/usr/local/tomcat/webapps
第二种是挂载的形式
docker run --privileged=true -v /app/deploy/www:/usr/local/tomcat/webapps/www  -p 8081:8080 tomcat:7 
  • 1

-v /app/deploy/www:/usr/local/tomcat/webapps/www 是把/app/deploy/www的目录挂载至容器的/usr/local/tomcat/webapps/www。 
–privileged=true是授予docker挂载的权限

至此,已成功把web应用部署在Docker容器运行


常用命令

  1.  
    # 查看所有镜像
  2.  
    docker images
  3.  
     
  4.  
    # 正在运行容器
  5.  
    docker ps
  6.  
     
  7.  
    # 查看docker容器
  8.  
    docker ps -a
  9.  
     
  10.  
    # 启动tomcat:7镜像
  11.  
    docker run -p 8080:8080 tomcat:7
  12.  
     
  13.  
    # 以后台守护进程的方式启动
  14.  
    docker run -d tomcat:7
  15.  
     
  16.  
    # 停止一个容器
  17.  
    docker stop b840db1d182b
  18.  
     
  19.  
    # 进入一个容器
  20.  
    docker attach d48b21a7e439
  21.  
     
  22.  
    # 进入正在运行容器并以命令行交互
  23.  
    docker exec -it e9410ee182bd /bin/sh
  24.  
     
  25.  
    # 以交互的方式运行
  26.  
    docker run -i -t -p 8081:8080 tomcat:7 /bin/bash
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics