GVKun编程网logo

Docker 安装 Tomcat(docker安装tomcat需要安装jdk吗)

17

关于Docker安装Tomcat和docker安装tomcat需要安装jdk吗的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于05通过docker安装tomcat、Centos7安装doc

关于Docker 安装 Tomcatdocker安装tomcat需要安装jdk吗的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于05 通过docker安装tomcat、Centos 7 安装 docker ,docker 安装 mysql 、 tomcat、CentOS Docker 安装 Tomcat、Docker 下自定义安装 Tomcat等相关知识的信息别忘了在本站进行查找喔。

本文目录一览:

Docker 安装 Tomcat(docker安装tomcat需要安装jdk吗)

Docker 安装 Tomcat(docker安装tomcat需要安装jdk吗)

查找 Docker Hub 上的 tomcat 镜像

docker search tomcat

 

 

 

 

取官方的镜像

docker pull tomcat

 

 

 

 

 

使用 tomcat 镜像

 

创建目录 tomcat, 用于存放后面的相关东西。

mkdir -p ~/tomcat/webapps ~/tomcat/logs ~/tomcat/conf

 

 

webapps 目录将映射为 tomcat 容器配置的应用程序目录

logs 目录将映射为 tomcat 容器的日志目录

conf 目录里的配置文件将映射为 tomcat 容器的配置文件

 

运行容器

docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat

 

 

 

命令说明:

-p 8080:8080:将容器的 8080 端口映射到主机的 8080 端口

-v $PWD/test:/usr/local/tomcat/webapps/test:将主机中当前目录下的 test 挂载到容器的 /test

 

 

打开浏览器:

 

05 通过docker安装tomcat

05 通过docker安装tomcat

tomcat是一款最流行的服务器。本文将阐述在docker当中安装tomcat,并部署我们自己的项目。

1、获取tomcat

docker pull tomcat

2、启动tomcat

#创建宿主机子的路径,用以映射docker安装的tomcat所在的操作系统路径
mkdir -p /root/tomcat/webapps
mkdir -p /root/tomcat/logs
#启动tomcat
docker run  --restart=always --privileged=true -p 8080:8080 -v /root/tomcat/logs:/usr/local/tomcat/logs -v /root/tomcat/webapps:/usr/local/tomcat/webapps --name mytomcat2 tomcat
#查看tomcat是否启动成功
docker ps|grep tomcat

3、测试

#进入宿主机子的映射目录,改变这里等价于改变tomcat容器中的/usr/local/tomcat/webapps
cd /root/tomcat/webapps
#创建一个文件夹test,并在其中创建文件
mkdir test
cd test
echo 'hello wanhe'>>index.html
操作:输入http://192.168.100.192:8080/test/index.html,查看结果。
#进入宿主机子的映射目录,改变这里等价于改变tomcat容器中的/usr/local/tomcat/webapps
cd /root/tomcat/webapps
#创建一个文件夹ROOT,并在其中创建文件
mkdir ROOT
cd ROOT
echo 'this is root'>>index.html
操作:输入http://192.168.100.192:8080/index.html,查看结果。

在实际部署中,在此webapps中放入我们的项目war包并命名为ROOT.war即可

Centos 7 安装 docker ,docker 安装 mysql 、 tomcat

Centos 7 安装 docker ,docker 安装 mysql 、 tomcat

一、安装docker

不要看其他的博客文档。就按照菜鸟教程执行。

菜鸟教程地址: http://www.runoob.com/docker/centos-docker-install.html 

装了几次启动不了。按照这个流程一遍OK 

我的环境是Centos 7, 内核 3.10版本。安装docker CE,社区免费版 

 

移除旧的版本:

$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine

安装一些必要的系统工具:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

添加软件源信息:

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

更新 yum 缓存:

sudo yum makecache fast 

安装 Docker-ce:

sudo yum -y install docker-ce

启动 Docker 后台服务

sudo systemctl start docker

测试运行 hello-world

[root@runoob ~]# docker run hello-world 

 

 

二、设置docker开机自启动 

# systemctl enable docker

# usermod -aG docker root(用户名)

 

 

重新登陆后直接查看,docker已经默认启动了。

 

 

三、docker 安装 MysqL 5.7版本。

 

 

MysqL 5.7安装后,启动MysqL容器

启动MysqL容器:

docker run -p 3306:3306 --name myMysqL -v $PWD/conf:/etc/MysqL/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/MysqL -e MysqL_ROOT_PASSWORD=root -d MysqL:5.7

 

 

-p 3306:3306 将容器的3306端口映射到主机的3306端口。

--name 容器名称。

-v -v $PWD/conf:/etc/MysqL/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/MysqL/my.cnf。

-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。

-v $PWD/data:/var/lib/MysqL :将主机当前目录下的data目录挂载到容器的 /var/lib/MysqL 。

-e MysqL_ROOT_PASSWORD=123456:初始化 root 用户的密码。

 

四、docker 安装 tomcat

docker pull tomcat:8.5 下载8.5版本的tomcat

docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat

启动tomcat容器。

-p 8080:8080:将容器的8080端口映射到主机的8080端口

-v $PWD/test:/usr/local/tomcat/webapps/test:将主机中当前目录下的test挂载到容器的/test

 

 

CentOS Docker 安装 Tomcat

CentOS Docker 安装 Tomcat

CentOS Docker 安装

 

sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

 

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install docker-ce docker-ce-cli containerd.io

如果提示您接受 GPG 密钥,请选是。

启动 Docker。

$ sudo systemctl start docker

通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community 。

$ sudo docker run hello-world

 

Docker 安装 Tomcat

docker search tomcat

docker pull tomcat

docker run --name tomcat -p 8081:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat

 

 

Docker 下自定义安装 Tomcat

Docker 下自定义安装 Tomcat

服务器环境建好以后,如果要扩展,只需要执行(详细命令到下文中找)
docker run .....
发完版本需要重启服务,执行(详细命令到下文中找)
docker restart [容器的ID]

将文件传到 tomcat 下,可参考  Docker cp 将宿主机上的文件复制到容器中


 

准备文件

apache-tomcat-9.0.31.tar.gz

jdk-8u191-linux-x64.tar.gz


 CentOS上安装Docker。

1.检查内核版本,返回的值大于3.10即可。、
$ uname -r

安装 Docker 

yum -y install docker


 

将tomcat 、jdk 传到 /usr/local/docker目录中

 在java、jdk同级目录下,创建 Dockerfile 文件,文件名不能错,否则后面 build 会检测不到

[root@localhost ~]# cd /usr/local/docker/

[root@localhost docker]# touch Dockerfile 

 

 

Dockerfile 文件内容如下

FROM         centos
MAINTAINER    ChenJun
#把java与tomcat添加到容器中
ADD ./jdk-8u191-linux-x64.tar.gz /usr/local/
ADD ./apache-tomcat-9.0.31.tar.gz /usr/local/
#安装vim编辑器
RUN yum -y install vim
#设置工作访问时候的WORKDIR路径,登录落脚点
ENV MYPATH /usr/local
WORKDIR $MYPATH
#配置java与tomcat环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_191
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.31
ENV CATALINA_BASE /usr/local/apache-tomcat-9.0.31
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
#容器运行时监听的端口
EXPOSE  8080
#启动时运行tomcat
# ENTRYPOINT ["/usr/local/apache-tomcat-9.0.31/bin/startup.sh" ]
# CMD ["/usr/local/apache-tomcat-9.0.31/bin/catalina.sh","run"]
CMD /usr/local/apache-tomcat-9.0.31/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.31/bin/logs/catalina.out

构建

#点表示当前目录 ,也可以直接指定  docker build -t tomcat9 /usr/local/docker

[root@localhost docker]# docker build -t tomcat9 . 

 如果显示超时,可以重启一下 systemctl restart docker

 构建成功后,如处图 

 

启动docker 加上 webapp、logs目录映射

[root@localhost web]# docker run -d -p 9091:8080 --name tomcat9091 -v /opt/web/tomcat9091/webapps:/usr/local/apache-tomcat-9.0.31/webapps -v /opt/web/tomcat9091/logs/:/usr/local/apache-tomcat-9.0.31/logs --privileged=true tomcat9

[root@localhost web]# docker run -d -p 9092:8080 --name tomcat9092 -v /opt/web/tomcat9092/webapps:/usr/local/apache-tomcat-9.0.31/webapps -v /opt/web/tomcat9092/logs/:/usr/local/apache-tomcat-9.0.31/logs --privileged=true tomcat9

 

创建映射后,会自动的在 宿主机上建立相应的目录(tomcat webapps下面原有的目录不会映射过来,不知道为什么,通过 docker exec ... 进去看的时候,容器webapps里面也没有文件

 

 

 

 测试Tomcat

建个测试的war包

 

 

 

 war 包上传到 9091下面,如果不加 test是不会显示的。默认带小猫的页面,不在本地的 webapps下面

 

 

 

 

 

 

 

 

 

 

 

 有时候war包放上去,需要重新服务。这时候可以用命令重启

docker restart [容器的ID]

 查看容器中的内容

[root@localhost docker]# docker exec 07de30dd6e3c ls -l

 

今天关于Docker 安装 Tomcatdocker安装tomcat需要安装jdk吗的讲解已经结束,谢谢您的阅读,如果想了解更多关于05 通过docker安装tomcat、Centos 7 安装 docker ,docker 安装 mysql 、 tomcat、CentOS Docker 安装 Tomcat、Docker 下自定义安装 Tomcat的相关知识,请在本站搜索。

本文标签: