专栏首页cmazxiaoma的架构师之路Docker环境搭建集成tomcat

Docker环境搭建集成tomcat

强烈推荐先看这篇文章,把Docker的基础知识过一遍。 10张图带你深入理解Docker容器和镜像


Docker安装和使用

下载docker

yum install -y epel-release
yum install docker-io   # 安装docker
chkconfig docker on     # 加入开机启动
service docker start     # 启动docker服务

查找tomcat并且下载

docker search tomcat 
docker pull  docker.io/tomcat

查看docker中所有顶层(top-level)镜像

docker images

image.png

创建一个新的容器并启动tomcat,这里深究一下docker createdocker start,docker run

  • docker create 命令为指定的镜像(image)添加了一个可读写层,构成了一个新的容器。注意,这个容器并没有运行。
  • docker start命令为容器文件系统创建了一个进程隔离空间。注意,每一个容器只能够有一个进程隔离空间。
  • docker run命令类似于git pull命令。git pull命令就是git fetch 和 git merge两个命令的组合,同样的,docker run就是docker create和docker start两个命令的组合。

如果启动失败,可以尝试service docker restart

-p: 端口映射,格式为:主机(宿主)端口:容器端口
-d: 后台运行容器,并返回容器ID
-i: 以交互模式运行容器,通常与 -t 同时使用
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用
docker run -itd --name tomcat -p 9010:8080 docker.io/tomcat

访问http://192.168.0.6:9010/

image.png

查看运行中的容器,这里可以看到tomcat容器。

image.png

查看tomcat容器中的地址并进入到tomcat容器

docker exec -it 6af6b06b97e6 /bin/bash

image.png

退出tomcat容器

image.png

将war包拷贝到tomcat容器中的webapps目录下

docker cp demo-0.0.1-SNAPSHOT.war 6af6b06b97e6:/usr/local/tomcat/webapps

重启tomcat容器

docker restart tomcat

能够成功访问到http://192.168.0.6:9010/demo-0.0.1-SNAPSHOT/jenkins/hello

image.png

以挂载的形式启动tomcat1容器(挂载就是将某个未使用的空间或可移动设备的存储空间指向一个目录。这样,通过该目录就可以访问你的空间了)

docker run -itd --name tomcat1 -v /usr/local/docker-file/demo-0.0.1-SNAPSHOT.war:/usr/local/tomcat/webapps/demo-0.0.1-SNAPSHOT.war -p 9010:8080 docker.io/tomcat

我们还可以配置DockerFile构建属于自己的镜像

from docker.io/tomcat:latest
maintainer 1363739582@qq.com
copy demo-0.0.1-SNAPSHOT.war /usr/local/tomcat/webapps

image.png

构建镜像

docker build -t mytomcat:v1 .

创建mytomcat-container容器并且启动它。

docker run -idt --name mytomcat-container -p
9010:8080 mytomcat:v1

image.png

查看mytomcat-container容器中的日志

docker logs -f --since="2019-03-27" --tail=50 mytomcat-container

image.png


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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Docker-Compose环境搭建和部署SpringBoot项目

    3.进入cd util-linux-2.33目录,输入./configure --without-ncurses命令进行check

    用户2032165
  • Jenkins+Docker实现CI/CD

    看到这一张图,我们就知道践行持续集成(CI)、持续部署(CD),可以简化工作流程,提高工作效率。

    用户2032165
  • 【分布式架构之旅-理论篇】数据库分库分表

    用户2032165
  • 老有人问你什么是Docker?把这篇干货文章甩给他!

    假设你们公司正在秘密研发下一个“今日头条”APP,我们姑且称为明日头条,程序员自己从头到尾搭建了一套环境开始写代码,写完代码后程序员要把代码交给测试同学测试,这...

    KevinYan
  • centos7安装docker

    Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。

    周小董
  • Docker常用命令汇总

    一、查看docker信息 1、查看docker版本 docker version 2、显示docker系统的信息 docker info 二、对image的...

    小小科
  • docker Error response from daemon manifest for i042416-ui5-nginx

    版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons)

    Jerry Wang
  • Docker系列学习文章 - 什么是docker?(二)

    | 导语 前面我们介绍了什么是容器,那么这篇文章我们继续跟大家讲解什么是docker。 docker是目前最火的LXC高级容器引擎,docker到现在几乎是容器...

    宝哥@devops运维
  • Docker常用命令汇总

    docker run image_name apt-get install -y app_name

    小小科
  • Docker 小记 — Docker Engine

    捷义

扫码关注云+社区

领取腾讯云代金券