10、Docker-dockerfile-部署web项目
2019-09-14 本文已影响0人
唯老
一、传统安装步骤
下载安装包
解压安装包
修改环境变量
测试是否安装成功
将app.war上传到tomcat下webapps
二、使用dockerfile安装
1、前期准备工作
- 去Oracle官网提前下载好所需的jdk(主要是官网通过命令下载比较不稳当,要身份验证)
-
上传宿主机的目录下
image
# 宿主机创建好上传的目录
mkdir -p /home/webapp/
# 从本地上传到宿主机 /home/webapp/
scp /你的目录/jdk-8u221-linux-x64.tar.gz 用户名@你的服务器地址:/home/webapp/
# 解压jdk 解压的名字是jdk-8u221
tar zxvf jdk-8u221-linux-x64.tar.gz
# 在远程服务器创建
cd /home/webapp/
# 下载tomcat
wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.24/bin/apache-tomcat-9.0.24.tar.gz
# 解压解压 tomcat
tar zxvf apache-tomcat-9.0.24.tar.gz
# 你需要部署的war包
scp /你的目录/app.war root@你的服务器地址:/home/webapp/
2、编写jdk的dockerfile
构建jdk
FROM ubuntu
ADD ./jdk-8u221-linux-x64.tar.gz /usr/local/java/
# 配置java的环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_221
ENV CLASSPATH $JAVA_HOME/lib;$JAVA_HOME/jre/lib
ENV PATH $PATH:$JAVA_HOME/bin
构建镜像
docker build -t zw/ubuntu18-jdk8 ./
启动镜像
docker run -it zw/ubuntu18-jdk8 /bin/bash
测试环境变量
java -version
javac -version
3、安装tomcat
编写dockerfile
# 利用上一步生成的镜像
FROM zw/ubuntu18-jdk8
ADD apache-tomcat-9.0.24.tar.gz /usr/local/tomcat/
# 配置tomcat环境变量
ENV CATALINA_HOME /usr/local/tomcat/apache-tomcat-9.0.24/
ENV CATALINA_BASE $CATALINA_HOME
ENV PATH $PATH:$CATALINA_HOME/lib:$CATALINA_HOME/bin
# 开放端口
EXPOSE 8080
# 启动容器的时候 启动tomcat
CMD ["catalina.sh", "run"]
构建镜像
docker build -t zw/ubuntu18-tomcat9 ./
运行镜像
docker run -d zw/ubuntu18-tomcat9
4、部署war包
使用-v参数将war包挂载至容器内的 tomcat/webapps目录
docker run -d -p 8080:8080 -v /home/webapp/app.war:/usr/local/tomcat/webapps/app.war --name
webapp zw/ubuntu18-tomcat9
三、完整版
FROM ubuntu
ADD ./jdk-8u221-linux-x64.tar.gz /usr/local/java/
# 配置java的环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_221
ENV CLASSPATH $JAVA_HOME/lib;$JAVA_HOME/jre/lib
ENV PATH $PATH:$JAVA_HOME/bin
# tomcat配置
ADD apache-tomcat-9.0.24.tar.gz /usr/local/tomcat/
# 配置tomcat环境变量
ENV CATALINA_HOME /usr/local/tomcat/apache-tomcat-9.0.24/
ENV CATALINA_BASE $CATALINA_HOME
ENV PATH $PATH:$CATALINA_HOME/lib:$CATALINA_HOME/bin
# 开放端口
EXPOSE 8080
# 启动容器的时候 启动tomcat
CMD ["catalina.sh", "run"]