【Tomcat部署+Linux部署+Docker部署】不同方式的部署

【Tomcat部署+Linux部署+Docker部署】不同方式的部署

  • (1)Tomcat服务器部署
      • IDEA项目打包
  • (2)Linux系统部署
      • (2.1)先连接虚拟机上的linux系统
      • (2.2)打开XShell,连接上地址
      • (2.3)先认识一下Linux下的文件目录
      • (2.4)搭建环境--安装JDK
      • (2.5)搭建环境--安装Mysql
      • (2.6)搭建环境--安装Tomcat
      • (2.7)上传项目文件--web项目
          • (2.7.1)上传项目文件
          • (2.7.2)上传sql文件
          • (2.7.3)配置tomcat
      • (2.8)上传项目文件--maven项目
  • (3)Docker部署
      • (1)Linux下用Docker和不用Docker的区别
      • (2)安装Docker和常用工具
  • Generated by NetworkManager
      • (3)理解概念

(1)Tomcat服务器部署

IDEA项目打包

(1)第一步:项目打成war包,clean+package

【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第1张图片
(2)第二步:找到war包的地址
package点击完后,控制台输出打包结果,复制路径找到war包
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第2张图片
(3)第三步:把war包复制到Tomcat的webapp目录下,在bin目录下启动服务器
在目标目录下找到war包,复制
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第3张图片

在webapp目录下粘贴
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第4张图片

在bin目录下启动
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第5张图片

(2)Linux系统部署

(1)环境工具准备
(2)上传项目文件war包
(3)找到目标文件目录webapp
(4)开始部署并查看日志
(5)命令忘了用history查看历史记录

(2.1)先连接虚拟机上的linux系统

进入Linux系统,打开终端,输入命令:ip address
得到ip地址为:192.168.17.130

(2.2)打开XShell,连接上地址

XShell比直接在虚拟机的终端使用好用多了,打开Xftp,可以浏览Linux系统下的文件目录

(2.3)先认识一下Linux下的文件目录

  • /bin目录:重点,是binary的缩写,放最常使用的命令
  • /sbin:重点,是super user的意思,存放的事系统管理员使用的系统管理程序
  • /home:重点,存放普通用户的主目录,在linux中每个用户都有一个自己的目录,一般这个目录名是以用户的账号命名的
  • /root:重点,这个目录为系统管理员,也称作超级权限者的用户主目录
  • /lib:重点,系统开机所需要的动态链接共享库,其作用类似于Windows的DLL文件,几乎所有的应用程序都需要用到这个共享库
  • /lost+found:重点,这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件
  • /etc:重点,所有的系统管理所需要的配置文件和子目录,例如你安装mysql的配置文件my.conf
  • /usr:重点,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于Windows下的program files目录
  • /boot:重点,存放的是启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件
  • /proc:这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息
  • /srv:别乱动,service缩写,该目录存放一些服务启动之后需要提取的数据
  • /sys:别乱动,这个是linux2.6内核的一个很大的变化,这个目录下安装了2.6内核中新出现的一个文件系统sysfs
  • /tmp:别乱动,这个目录是用来存放一些临时文件的
  • /dev:类似于Windows的设备管理器,把所有的硬件用文件的形式存储
  • /media:重点,linux系统会识别一些设备,例如u盘,识别以后,linux会把识别的设备挂载到这个目录下
  • /mnt:重点,系统提供这个目录是为了让用户临时挂载别的文件系统的,我们可以把外部的存储挂载在mnt上,然后进入该目录就能查看里面的内容了。例如Windows和linux的共享文件夹
  • /opt:这是给主机额外安装软件所摆放的目录,如安装MySQL数据库就可以放到这个目录下,默认是空
  • /usr/local:重点,这是另一个给主机额外安装软件所安装的目录吗,一般是通过编译源码方式安装的程序
  • /var:重点,这个目录中存放着在不断扩充着的东西,习惯性经常被修改的目录放在这个目录下,包括各种日志文件
  • /selinux:是一种安全子系统,它能控制程序只能访问特定文件

【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第6张图片

(2.4)搭建环境–安装JDK

  1. 安装命令:yum -y install java-1.8.0-openjdk.x86_64
  2. 检查版本:java -version

(2.5)搭建环境–安装Mysql

  1. 获取mysql社区版:cd /tmp
    wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
    rpm -ivh mysql-community-release-el7-5.noarch.rpm
  2. 通过yum进行安装:yum install mysql mysql-server mysql-devel -y
  3. 启动:systemctl start mysql.service
  4. 检查端口号:netstat -anp|grep 3306
  5. 设置密码:mysqladmin -u root password admin
  6. 登录验证:mysql -uroot -padmin
  7. 查看数据库:show databases;
  8. 退出命令:quit

(2.6)搭建环境–安装Tomcat

(1)安装:cd /tmp
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.92/bin/apache-tomcat-7.0.92.tar.gz
tar xzf apache-tomcat-7.0.92.tar.gz
mv apache-tomcat-7.0.92 /usr/local/tomcat7
注意是安装在文件 /usr/local/tomcat7 下面
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第7张图片(2)也可以使用xftp上传tomcat文件,传一个Tomcat9到home文件夹下
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第8张图片(3)运行

  1. 进入home文件夹:cd /home
  2. 查看当前文件夹:ll
  3. 进入tomcat文件夹:cd apache-tomcat-9.0.21/
  4. 查看当前文件夹:ll
  5. 进入bin文件夹:cd bin/
  6. 如果启动sh提示权限不足:chmod +x *.sh
  7. 在当前文件夹下关闭启动:./shutdown.sh
  8. 查看启动已启动的tomcat:ps -ef|grep tomcat
  9. 关闭已启动的进程:
  10. 在当前文件夹下启动tomcat:./startup.sh
  11. 退回到上一层目录:cd …
  12. 查看启动日志文件(注意:win系统显示的是GBK,而Linux显示的是UTF-8):tail -f logs/catalina.out
  13. 查看结束退出快捷键:ctrl+c
  14. 监听一下8080端口号:netstat -anp|grep 8080

(4)要开放端口不然windows上访问不到

  1. 打开配置文件:vi /etc/vsftpd/vsftpd.conf
  2. 编辑时翻页:ctrl+f
  3. 编辑时到最后一行:shift+g或者$+回车
  4. 进入编辑:i键
  5. 在配置文件下加上:表示端口分配在30000-30010之间
    pasv_enable=YES
    pasv_min_port=30000
    pasv_max_port=30010
  6. 退出编辑:esc键(按完以后光标消失,这时直接输入 : ,选择保存还是不保存)
  7. 保存并退出::wq!
    不保存并退出::q!

(5)到windows上进行访问
http://192.168.17.130:8080/
前面是我们连接Linux的地址,后面是端口号

(6)在windows访问不到8080的解决方案
1-看看8080端口有没有启动:netstat -anp|grep 8080
在这里插入图片描述
2-看看Linux系统能不能访问8080:curl http://192.168.17,130:8080
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第9张图片3-如果第二步可以访问,说明就是防火墙的问题了
开放8080端口:firewall-cmd --zone=public --add-port=8080/tcp --permanent
重启防火墙:firewall-cmd --reload
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第10张图片

(2.7)上传项目文件–web项目

(2.7.1)上传项目文件

(1)在home文件夹下创建新的文件夹web-project:mkdir web-project
(2)在本地把项目解压,再用xftp把加压后的项目文件上传
【Tomcat部署+Linux部署+Docker部署】不同方式的部署_第11张图片

(2.7.2)上传sql文件

(1)Linux的mysql大小写是敏感的,为了编写方便要改成不敏感的
1-打开mysql配置文件:vi /etc/my.cnf
2-在[mysqld]后添加添加:lower_case_table_names=1
3-重启mysql:systemctl restart mysqld.service
(2)上传后缀为.sql的文件
(3) 创建数据库
1-连接到数据库:mysql -uroot -padmin
2-创建数据库:CREATE DATABASE tmall DEFAULT CHARACTER SET utf8;
3-查看数据库:show databases;
4-先ctrl+c退出一下
5-导入数据:mysql -u root -padmin --default-character-set=utf8 tmall < /home/wwwroot/ftptest/tmall.sql
(4)验证一下
1-重新登录:mysql -uroot -padmin
2-进入数据表:use tmall;
3-查看数据表:show tables;
4-测试sql语句:select count(*) from product;

(2.7.3)配置tomcat

(1)打开server.xml:vi /usr/local/tomcat7/conf/server.xml
(2)在 (3)重启tomcat:
/usr/local/tomcat7/bin/shutdown.sh
/usr/local/tomcat7/bin/startup.sh

(2.8)上传项目文件–maven项目

(3)Docker部署

最重要的不是如何去搭建环境,而是在搭建好的环境当中如何进行合理的使用。

(1)Linux下用Docker和不用Docker的区别

首先,Docker的绝大部分使用场景都是在Linux系统,所以首先安装虚拟机VMWare,然后在虚拟机里安装Linux系统(当然也可以直接使用阿里云的服务器)

然后,为什么要用Docker呢?

先要知道以前没使用Docker是如何部署的,Linux系统上没有环境,需要先搭环境:

  1. 安装 FTP 服务器,配置它,配置FTP用户
  2. 安装JAVA环境
  3. 安装数据库,配置数据库
  4. 安装TOMCAT
  5. 开放FTP和TOMCAT端口
  6. 上传项目应用
  7. 配置 TOMCAT
  8. 上传SQL语句
  9. 导入这个 SQL 语句
  10. 启动TOMCAT

使用了Docker以后:

  • 1.安装Linux系统
  • 2.安装Docker
  • 3.在Docker里安装一个小的Linux操作系统
  • 4.把封装好所有配置工作的"Linux系统"整个运行起来

(2)安装Docker和常用工具

(1)安装Docker
yum install docker -y
(2)启动Docker
systemctl start docker.service
systemctl status docker.service
(3)以下是docker 的生命周期管理常用命令:
systemctl stop docker.service
systemctl start docker.service
systemctl restart docker.service
systemctl status docker.service
(4)安装常用工具
yum install iproute ftp bind-utils net-tools wget -y
(5)配置dns
1)查看百度的域名服务器地址
nslookup www.baidu.com
2)改为公用的域名服务器地址
进入编辑:vi /etc/resolv.conf
修改如下:

Generated by NetworkManager

search www.tendawifi.com
nameserver 119.29.29.29
nameserver 182.254.116.116
3)查看百度的域名服务器地址
nslookup www.baidu.com
看到 域名服务器地址已经是 119.29.29.29 了
(6)配置镜像加速器
1)直接运行如下代码:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://hvmf8r55.mirror.aliyuncs.com”]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
2)查看 daemon.json 是否已经生效了
tail /etc/docker/daemon.json
(7)拉取镜像
把可运行的Linux(镜像)从 hub.docker.com 上拉下来:docker pull how2j/tmall
(8)运行镜像
docker run -dit --privileged -p21:21 -p80:80 -p8080:8080 -p30000-30010:30000-30010 --name how2jtmall how2j/tmall:latest /usr/sbin/init
(9)检查端口
netstat -anp|grep 8080
(10)访问地址
http://192.168.17.130:8080/tmall/

(3)理解概念

(1)认识镜像仓库
所谓的镜像,就是持久化后的,安装了各种工具,软件和服务的一个Linux 操作系统。一个镜像可以在docker的镜像仓库中存放和管理

基础概念:

  • 仓库: 别人做好的现成的镜像,都放在仓库里
  • 镜像: 自己要用哪个镜像,就先拉到本地来。镜像就相当于还没激活的容器。
  • 容器: 容器就是跑起来的镜像,就是一个完整的工作环境

常用命令:

  • pull命令拉取,把镜像从服务器上拉到 Docker 本地:docker pull how2j/tmall
  • 镜像拉取到本地以后,需要激活,就是run起来:docker run -dit --privileged -p21:21 -p80:80 -p8080:8080 -p30000-30010:30000-30010 --name how2jtmall how2j/tmall:latest /usr/sbin/init
  • 进入容器,就是进入启动的运行Tomcat的Linux系统:docker exec -it how2jtmall /bin/bash
  • 进入容器以后,就可以像操作一个普通Linux一样操作了,例如使用ll命令等等

(2)管理镜像仓库

  • search 查看仓库里有些什么镜像:docker search how2j
  • pull 拉取镜像
  • images 查看本地有些什么镜像:docker images
  • rmi 删除本地镜像
  • 修改本地镜像名称
  • push , 把镜像提交到仓库

你可能感兴趣的:(框架和中间件,docker,linux,java,centos,大数据)