Docker环境搭建集成tomcat

1字数 440阅读 84

强烈推荐先看这篇文章,把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