目录
Linux
概念
——操作系统、服务器
如何部署项目
1、开发人员有一个完整的项目,被打成了jar包或者war包
常识:如果是window部署,就是将war包丢到 tomcat>webapp下会自动解压,项目会跑起来
2、在Linux服务器中配置jdk、tomcat
①上传jdk、tomcat的压缩包,要借助MobaXterm.exe、FinalShell等工具上传
②配置jdk环境变量
1)vi /etc/profile
export JAVA_HOME=/javaxl/jdk1.8.0_151(jdk解压路径)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
3、解压tomcat压缩包
tar -zxvf apache-tomcat-8.0.53.tar.gz
4、利用MobaXterm.exe上传war包,然后进入tomcat的bin目录,执行./start.sh命令,使tomcat跑起来。
5、升级项目
① 停掉tomcat服务:./shutdown
② 进入到 tomcat>webapp 备份,执行命令 tar -zcvf ssm(老版本的项目名) ssmNew(新版本的项目名) .zip
③ 将升级的项目war包解压出来,此时解压出来的项目,会覆盖原有的项目文件 tar -zxvf ssm.zip
④ 重启:bin ./start.sh
常用的命令
cd | 切换目录 |
ll / ls | 查看当前目录下所有文件及文件夹 |
mkdir | 创建文件夹 |
rm -rf | 删除文件 切记:rm -rf /* 是删除所有,不要随便使用 |
vi | 查看并编辑文件 |
:wq | 退出并保存文件 |
ping | 判断是否有网,或者与其他服务器是否可以连接 |
ifconfig | 查看当前IP |
pwd | 常看当前所在目录 |
tar -zxvf | 解压 |
tar -zcvf | 压缩 |
cat | 查看命令 |
Docker
概念
——容器技术,新一代的虚拟化技术
镜像
好比类
先有类才有实例对象,正是需要构建大量的实例对象,才会创建类;所以先有镜像才有容器
由于大量的容器是相同的,那么才会构建镜像
容器
好比实例
会通过docker容器技术,创建大量的容器
数据卷
解决多个容器中数据共享的问题
常用的命令
镜像:
docker pull 镜像名 | 拉取镜像 |
docker rmi 镜像名 | 删除镜像 |
docker images | 查询本地镜像 |
docker search | 查询中央仓库镜像 |
容器:
docker ps | 查看正在运行的容器 |
docker ps -a | 查看所有容器 |
docker run 容器名 | 运行容器 |
docker rm 容器名 | 删除容器 |
docker inspect 容器名 | 查看容器的详细信息 |
docker exec | 进入容器 |
数据卷:
docker run -v 容器ID:/目录 宿主机:目录
docker pull mysql:5.7
docker run -p 3307:3306 --name mysql1 -di
-v /home/javaxl/data/mysql/mysql.conf.d/:/etc/mysql/mysql.conf.d/
-v /home/javaxl/data/mysql/data/:/var/lib/mysql
-v /home/javaxl/data/mysql/log/:/var/log
-e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
Dockerfile
制作镜像
FORM:基础镜像
ADD:将文件复制到容器中并解压
COPY:将文件复制到容器中
构建镜像的命令:docker build 要构建的目录 . (点不能丢!)
上传阿里云、镜像云
docker 中网络
仅主机:容器IP及端口用的是宿主机的
docker run -di --name mt2 --net=host javaxl/tomcat8:v1.0
桥接:容器随机分配ip,端口独立于宿主机的
docker run -di --name mt1 -p:8081:8080 javaxl/tomcat8:v1.0
RabbitMQ
概念:消息中间件
作用:提升应用程序的性能;流量削峰
生产者:消息发送方
消费者:消息消费方
Broker:RabbitMQ消息中间件服务器
消息的100%投递