Docker入门实践笔记(二)——安装、配置Tomcat镜像,并设置开机自启动

内容

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

版本

  操作系统:CentOS 7.2 64位

  Docker:17.12.1.ce

  Tomcat容器:8.0.51-jre8

适合人群

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

说明

  转载请说明出处:Docker入门实践笔记(二)--安装和配置Tomcat镜像

参考

  Docker官方命令大全:https://docs.docker.com/engine/reference/commandline/docker/

  Docker命令大全-菜鸟教程:http://www.runoob.com/docker/docker-command-manual.html

  Docker官方容器镜像仓库:https://hub.docker.com/

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

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

步骤

一、准备工作

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

[Serv@iz8vbg ~]$ mkdir docker
[Serv@iz8vbg ~]$ mkdir docker/tomcat8
[Serv@iz8vbg ~]$ mkdir docker/tomcat8/webapps
[Serv@iz8vbg ~]$ cd docker/tomcat8/webapps/
[Serv@iz8vbg webapps]$ pwd
/home/Serv/docker/tomcat8/webapps

1.2确认Docker服务在运行状态

docker version或systemctl status docker
[Serv@iz8vbg 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

1537407392837

2.2下载Tomcat容器镜像

[root@iz8vbg ~]# 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运行镜像

[Serv@iz8vbg webapps]$ sudo docker run -d -p 80:8080 
-v /home/Serv/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观察容器运行状态

[Serv@iz8vbg 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的启动情况

[Serv@iz8vbg 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上隐藏项目路径

1537412582074

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

开通HTTP80端口服务

1537415640735

3.3确认域名解析情况

1537415525679

3.4访问域名,部署成功

四、设置Docker和镜像开机启动

4.1设置Docker开机启动

[Serv@iz8vbg jars]$ sudo systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

 4.2设置容器开机启动

//创建容器时没有设置开机启动,通过此命令修改
[Serv@iz8vbg jars]$ sudo docker update --restart=always e39a959d7bff
e39a959d7bff

 4.3使用reboot命令重启进行测试

[Serv@iz8vbg jars]$ sudo  reboot

 重启后可以看到docker服务和容器自动启动,设置成功。

Welcome to Alibaba Cloud Elastic Compute Service !
[root@iz8vbg ~]# sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e39a959d7bff tomcat:8.0.51-jre8 "catalina.sh run" 3 weeks ago Up 3 minutes 0.0.0.0:80->8080/tcp tomcat8 
posted @ 2018-09-20 19:50  比脚更长的路  阅读(2275)  评论(0编辑  收藏  举报