Docker学习之搭建JavaWeb环境

时间:2022-05-06
本文章向大家介绍Docker学习之搭建JavaWeb环境,主要内容包括回顾、配置、访问、快捷、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

自上次从北京参加阿里云社区开发者进阶大会回来,就萌发了学习Docker的种子,尽管公司现在的业务并没有什么需求,但学习先进的东西总没有坏处。

2017年,Docker 四周岁啦!尽管之前有所耳闻,但是并没有机会和时间去接触,正好手里躺着两台服务器,趁着年底系统的学习一下,自此接触并认识小鲸鱼。

docker-4周年-900x500.png

回顾

上一篇文章大体对Docker有了一定的认识和了解,Docker学习,并从阿里云官方镜像拉取了一个centos镜像。今天,来学下Docker容器如何配置一个JavaWeb环境。

配置

首先查看是否有容器或者在运行,然后启动并进入容器:

# 查看所有容器

docker ps -a

# 查看运行中的容器

docker ps

# 启动容器

docker start 容器名或ID

# 进入容器

docker attach 容器名或ID

安装JDK,这里我们直接使用YUM安装(简单方便与官方的基本没什么差别):

 yum install java -y

安装完成,如果没有错误,执行以下命令检查是否安装成功:

java -version

安装Tomcat容器,这里我们下载官方的Tomcat8:

# 下载

wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.5.24/bin/apache-tomcat-8.5.24.tar.gz

# 解压

tar -zvf apache-tomcat-8.5.24.tar.gz

# 重命名

mv apache-tomcat-8.5.24 tomcat8

# 切换的执行目录

cd tomcat8/bin

# 启动容器

./startup.sh

启动后,切换到logs目录查看日志是否启动成功:

tail -100f catalina.out

访问

以上配置完成以后,那么我们如何访问容器中的服务呢?由于母鸡中安装配置了OpenResty,我们可以使用OpenResty做代理服务访问我们容器内部的服务。

首先我们命令查看容器的内网IP:

# 查询单个容器的IP

docker inspect <container id>

# 或者查询所有容器的IP

docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq)

然后通过Nginx代理配置:

 server {

        listen       80;

        server_name  docker.52itstyle.com;



        charset utf-8;



        location / {

            default_type text/html;

            proxy_pass http://172.18.0.2:8080;

        }



    }

最终访问地址:http://docker.52itstyle.com/

快捷

当然,如果你不想一步步配置JavaWeb运行环境,你可以执行执行以下命令获取现成的打包镜像:

#阿里镜像

docker login --username=admin@52itstyle.com registry.cn-hangzhou.aliyuncs.com

# 获取 tomcat8版本

docker pull tomcat:8