欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Docker入门实践笔记(二)--安装和配置Tomcat镜像

程序员文章站 2023-10-17 14:01:05
内容 ​新鲜热乎的阿里云服务器需要临时作为Web服务器部署一些静态页面,在该服务器安装Docker(节一)并安装Tomcat容器部署Web项目(节二)。 版本 操作系统:CentOS 7.2 64位 Docker:17.12.1.ce Tomcat容器:8.0.51-jre8 适合人群 ​linux ......

内容

  ​新鲜热乎的阿里云服务器需要临时作为web服务器部署一些静态页面,在该服务器安装docker(节一)并安装tomcat容器部署web项目(节二)。

版本

  操作系统:centos 7.2 64位

  docker:17.12.1.ce

  tomcat容器:8.0.51-jre8

适合人群

  ​linux新手,docker新手,java新手

参考

  docker官方命令大全:

  docker命令大全-菜鸟教程:

  docker官方容器镜像仓库:

  阿里云容器镜像仓库: https://dev.aliyun.com/search.html

  注:docker官方镜像比阿里云镜像版本更新。

步骤

一、准备工作

1.1创建用于映射tomcat容器的webapps目录,便于项目部署

[servera@iz8vbgliys1ni7szfx6t2bz ~]$ mkdir docker
[servera@iz8vbgliys1ni7szfx6t2bz ~]$ mkdir docker/tomcat8
[servera@iz8vbgliys1ni7szfx6t2bz ~]$ mkdir docker/tomcat8/webapps
[servera@iz8vbgliys1ni7szfx6t2bz ~]$ cd docker/tomcat8/webapps/
[servera@iz8vbgliys1ni7szfx6t2bz webapps]$ pwd
/home/servera/docker/tomcat8/webapps

1.2确认docker服务在运行状态

docker version或systemctl status docker
[servera@iz8vbgliys1ni7szfx6t2bz webapps]$ systemctl status docker
● docker.service - docker application container engine
   loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   active: active (running) since thu 2018-09-20 00:01:25 cst; 10h ago
     docs: https://docs.docker.com
 main pid: 3067 (dockerd)
   memory: 623.3m
   cgroup: /system.slice/docker.service
           ├─3067 /usr/bin/dockerd
           └─3074 docker-containerd --config /var/run/docker/containerd/containerd.toml

二、安装并启动

2.1在阿里云容器镜像仓库搜索tomcat寻找目标镜像的tag,此处为8.0.51-jre8

2.2下载tomcat容器镜像

[root@iz8vbgliys1ni7szfx6t2bz ~]# docker pull tomcat:8.0.51-jre8
8.0.51-jre8: pulling from library/tomcat
cc1a78bfd46b: pull complete
6861473222a6: pull complete
7e0b9c3b5ae0: pull complete
ae14ee39877a: pull complete
8085c1b536f0: pull complete
6e1431e84c0c: pull complete
87c0569aaeea: pull complete
ece988bd327b: pull complete
aca87ffc0e3c: pull complete
0ef9195fe095: pull complete
9b7aecc9920a: pull complete
0a88d95a7250: pull complete
digest: sha256:8fa15f85f39220adbd402ff73de97175f7c7f3ea95bef16e502970c76fe546a5
status: downloaded newer image for tomcat:8.0.51-jre8

2.3运行镜像

[servera@iz8vbgliys1ni7szfx6t2bz webapps]$ sudo docker run -d -p 80:8080 
-v /home/servera/docker/tomcat8/webapps:/usr/local/tomcat/webapps \
--name tomcat8 tomcat:8.0.51-jre8                   \  e39a959d7bff7c66bae8be11fc2da55b62880029dffb6856435bbc77249281a6 命令解释: -d:后台运行容器,并返回容器id -p:端口映射,格式为:主机(宿主)端口:容器端口。将容器的8080端口映射为宿主机的80端口,供外网访问。 -v:绑定目录挂载。将tomcat容器中的webapps目录绑定到宿主机的指定目录,便于项目部署。 --name:为容器指定一个名称

2.4观察容器运行状态

[servera@iz8vbgliys1ni7szfx6t2bz webapps]$ sudo docker ps
container id    image                command             created                status          ports             names
e39a959d7bff    tomcat:8.0.51-jre8   "catalina.sh run"   3 minutes ago       up 3 minutes  0.0.0.0:80->8080/tcp   tomcat8

2.5日志检查tomcat的启动情况

[servera@iz8vbgliys1ni7szfx6t2bz webapps]$ sudo docker logs --tail 20 e39a959d7bff
....
20-sep-2018 02:16:39.239 info [main] org.apache.catalina.core.standardengine.startinternal starting servlet engine: apache tomcat/8.0.51
20-sep-2018 02:16:39.246 info [main] org.apache.coyote.abstractprotocol.start starting protocolhandler ["http-apr-8080"]
20-sep-2018 02:16:39.267 info [main] org.apache.coyote.abstractprotocol.start starting protocolhandler ["ajp-apr-8009"]
20-sep-2018 02:16:39.283 info [main] org.apache.catalina.startup.catalina.start server startup in 64 ms

三、部署项目

3.1上传web项目

使用ftp工具将web项目拷贝到webapps目录下,web项目文件夹命名为root是为了在tomcat上隐藏项目路径

3.2配置阿里云服务器安全组规则

开通http80端口服务

3.3确认域名解析情况

3.4访问域名,部署成功