Ubuntu部署项目
一、Ubuntu目录结构
| 目录 | 说明 |
|---|---|
| bin | 存放二进制可执行文件(ls,cat,mkdir等) .exe== |
| boot | 存放用于系统引导时使用的各种文件 开机引导 |
| dev | 用于存放设备文件 打印机啥的 |
| etc | 存放系统配置文件 hosts(改ip,域名),软件的配置文件等等 |
| home | 存放所有用户文件的根目录 等于c盘user |
| lib | 存放跟文件系统中的程序运行所需要的共享库及内核模块 放依赖 |
| mnt | 系统管理员安装临时文件系统的安装点 |
| opt | 额外安装的可选应用程序包所放置的位置 |
| proc | 虚拟文件系统,存放当前内存的映射 |
| root | 超级用户目录 |
| sbin | 存放二进制可执行文件,只有root才能访问 |
| tmp | 用于存放各种临时文件 |
| usr | 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录 自己安装的程序必须安装在这里 |
| var | 用于存放运行时需要改变数据的文件 存放数据比如数据库分配空间最大 |
二、Ubuntu命令
1、常用命令
| 命令 | 说明 | 语法 | 参数 | 参数说明 |
|---|---|---|---|---|
| ls | 显示文件和目录列表 | ls [-alrtAFR] [name...] | ||
| -l | 列出文件的详细信息 | |||
| -l+a | 列出当前目录所有文件,包含隐藏文件 | |||
| mkdir | 创建目录 | mkdir [-p] dirName | ||
| -p | 父目录不存在情况下先生成父目录 | |||
| cd | 切换目录 | cd [dirName] | ||
| touch | 生成一个空文件 | |||
| echo | 生成一个带内容文件 | echo abcd > 1.txt,echo 1234 >> 1.txt | 》追加内容 | |
| cat | 显示文本文件内容 | cat [-AbeEnstTuv] [--help] [--version] fileName | ||
| cp | 复制文件或目录 | cp [options] source dest | ||
| rm | 删除文件 | rm [options] name... | ||
| -f | 强制删除文件或目录 | |||
| -r | 同时删除该目录下的所有文件 | |||
| mv | 移动文件或目录 | mv [options] source dest | ||
| find | 在文件系统中查找指定的文件 | |||
| -name | 文件名 | |||
| grep | 在指定的文本文件中查找指定的字符串 | |||
| tree | 用于以树状图列出目录的内容 | |||
| pwd | 显示当前工作目录 | |||
| ln | 建立软链接 | 相当于快捷方式 | ||
| more | 分页显示文本文件内容 | |||
| head | 显示文件开头内容 | |||
| tail | 显示文件结尾内容 | |||
| -f | 跟踪输出 |
2、系统管理命令
| 命令 | 说明 |
|---|---|
| stat | 显示指定文件的相关信息,比ls命令显示内容更多 |
| who | 显示在线登录用户 |
| hostname | 显示主机名称 |
| uname | 显示系统信息 |
| top | 显示当前系统中耗费资源最多的进程 |
| ps | 显示瞬间的进程状态 |
| du | 显示指定的文件(目录)已使用的磁盘空间的总量 -h给人看的默认给计算机看 |
| df | 显示文件系统磁盘空间的使用情况 |
| free | 显示当前内存和交换空间的使用情况 |
| ifconfig | 显示网络接口信息 |
| ping | 测试网络的连通性 |
| netstat | 显示网络状态信息 |
| clear | 清屏 |
| kill | 杀死一个进程 -9彻底杀死(windows结束进程) |
3、解压缩命令
| 命令 | 语法 | 参数 | 参数说明 |
|---|---|---|---|
| tar | tar [-cxzjvf] 压缩打包文档的名称 欲打包目录 | ||
| 压缩 | -c | 建立一个归档文件的参数指令 | |
| 解压缩 | -x | 解开一个归档文件的参数指令 | |
| ★ | 算法 | -z | 是否需要用 gzip 压缩 |
| 算法 | -j | 是否需要用 bzip2 压缩 | |
| -v | 压缩的过程中显示文件 | ||
| -f | 使用档名,在 f 之后要立即接档名 | ||
| -tf | 查看归档文件里面的文件 |
4、Linux的环境配置文件----.bashrc文件
.bash_history 记录之前输入的命令
.bash_logout 当你退出时执行的命令
.bash_profile 当你登入shell时执行
.bashrc 当你登入shell时执行
5、编辑器
编辑模式:等待编辑命令输入(Esc进入)
插入模式:编辑模式下,输入 i 进入插入模式,插入文本信息
命令模式:在编辑模式下,输入 : 进行命令模式
q 直接退出vi wq 保存后退出vi ,并可以新建文件 q! 强制退出
w file 将当前内容保存成某个文件 set number 在编辑文件显示行号
set nonumber 在编辑文件不显示行号
6、软件的安装
查看系统版本 lsb_release -a
更新数据源 sudo apt-get update
安装软件 apt install packagename
卸载软件 sudo apt autoremove packagename
三、项目部署
1、安装Java
命令: vi /etc/profile
尾部添加:
export JAVA_HOME=jdk安装目录
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
注:JDK8以上手动生成jre
bin/jlink --module-path jmods --add-modules java.desktop --output jre
使配置文件生效 source /etc/profile
2、安装Mysql
安装Mysql8.0
1、下载db文件
2、sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
3、sudo apt update更新 sudo apt upgrade再次更新
4、apt-get install mysql-server
5、ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';(select*fromuser查看host)
6、select 'host' from user where user='root';
7、update user set host = '%' where user ='root';
8、flush privileges;
9、启动mysql service start mysql
删除mysql
sudo apt-get autoremove --purge mysql-server-5.0
sudo apt-get remove mysql-server
sudo apt-get autoremove mysql-server
sudo apt-get remove mysql-common
//清除残余
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
3、部署项目
(1)War包部署项目
1、安装Tomcat
2、把war放进Tomcat的webapps里即可
3、更改tomcat下 conf==》server.xml ==》修改并添加(在host标签里)即可url不用输入study-0.0.1-SNAPSHOT
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
<Context path="" docBase="study-0.0.1-SNAPSHOT" reloadable="true" />
4、启动tomcat
进入tomcat的bin目录:./start.sh
关闭: ./shutdown.sh
(2)Jar包部署项目
服务器:
进入安全组开放端口
后台挂起:
nohup java -jar jar包名字.jar &
查看进程id:
jobs -l
退出终端重新打开终端看不到进程了:
百度一大堆说的跟脱裤子放屁一样,还好我机智,直接查看占用端口号得程序不就行了吗!
反手一个:lsof -i:8888
反手杀死一个进程很舒服:
kill 8888
Ubuntu部署项目的更多相关文章
- ubuntu环境部署项目
安装python3.6 第一步:sudo add-apt-repository ppa:jonathonf/python-3.6 如果报错为:sudo: add-apt-repository: com ...
- NET Core:部署项目到Ubuntu Server
NET Core:部署项目到Ubuntu Server 概述 基于上一篇成功安装Ubuntu Server 16.10的基础上,接下来继续我们ASP.NET Core项目的部署之旅! 只是对于这些年整 ...
- Linux Ubuntu从零开始部署web环境及项目 -----部署项目 (三)
上一篇讲了如何在linux搭建web环境,这边将如何部署项目. 1,打包项目包 2,上传项目包 将.war项目包通过xftp上传到tomcat目录wabapps目录下 3,启动项目 通过xshell命 ...
- Ubuntu部署python3.5的开发和运行环境
Ubuntu部署python3.5的开发和运行环境 1 概述 由于最近项目全部由python2.x转向 python3.x(使用目前最新的 python3.5.1) ,之前的云主机的的默认python ...
- git管理和自动部署项目
当一个项目需要纳入到版本控制的时候,选择的工具还是比较多的,最常见的就是工具有CVS,SVN,GIT等.在平时的开发中视情况而定,从来就没有最好的版本控制工具,只有最适合的工具.在这里我习惯用git来 ...
- Ubuntu部署python3.7的开发和运行环境
Ubuntu部署python3.7的开发和运行环境 1 概述 由于最近项目全部由python2.x转向 python3.x(使用 python3.7.1) ,之前的云主机的的默认python版本都面临 ...
- docker安装Tomcat软件,部署项目
1 搜索tomcat镜像 $ sudo docker search tomcat NAME DESCRIPTION STARS OFFICIAL AUTOMATED tomcat Apache Tom ...
- ubuntu部署django详细教程
教程使用的软件版本:Ubuntu 18.04.1 LTS,django2.0,Python 3.6.5.nginx-1.13.7.uWSGI (2.0.17.1),Ubuntu是纯净的,全新的.下面我 ...
- Docker Compose部署项目到容器-基于Tomcat和mysql的项目yml配置文件代码
场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...
随机推荐
- 2019 GDUT Rating Contest I : Problem H. Mixing Milk
题面: H. Mixing Milk Input file: standard input Output file: standard output Time limit: 1 second Memory ...
- springMVC:校验框架:多规则校验,嵌套校验,分组校验;ssm整合技术
知识点梳理 课堂讲义 学习目标 能够阐述表单验证的分类和区别 能够运用表单验证的常用注解 能够编写表单验证的示例 能够编写SSM整合的应用案例 能够总结SSM整合的步骤 1 校验框架 1.1 入门-视 ...
- SSM 电影后台管理项目
SSM 电影后台管理项目 概述 通过对数据库中一张表的CRUD,将相应的操作结果渲染到页面上. 笔者通过这篇博客还原了项目(当然有一些隐藏的坑),然后将该项目上传到了Github.Gitee,在末尾会 ...
- Android 之 手动创建活动
•活动是什么 活动(Activity)是最容易吸引用户的地方,它是一种可以包含用户界面的组件: 主要用于和用户进行交互: 一个应用程序可以包含零个或多个活动. 接下来,我们来学习一下活动的基本用法. ...
- Vue组件(35)动态组件 component 的 is 到底可以是啥?
component 动态组件 Vue官网上提供了一个动态组件 <component :is="currentTabComponent"> ,那么这里的 is 到底是什么 ...
- 从网络请求过程看OkHttp拦截器
前言 之前我们结合设计模式简单说了下OkHttp的大体流程,今天就继续说说它的核心部分--拦截器. 因为拦截器组成的链其实是完成了网络通信的整个流程,所以我们今天就从这个角度说说各拦截器的功能. 首先 ...
- tasker支持的shell 命令大全
参考 http://www.notenoughtech.com/tasker/tasker-run-shell-commands/ 罗列所有系统配置项 settings list system s ...
- 2021精选 Java面试题附答案(一)
1.什么是Java Java是一门面向对象的高级编程语言,不仅吸收了C++语言的各种优点,比如继承了C++语言面向对象的技术核心.还摒弃了C++里难以理解的多继承.指针等概念,,同时也增加了垃圾回收机 ...
- [深搜]A. 【例题1】拔河比赛
A . [ 例 题 1 ] 拔 河 比 赛 A. [例题1]拔河比赛 A.[例题1]拔河比赛 解析 模板题,选与不选 Code #include <bits/stdc++.h> #defi ...
- Python转义字符中'\'的个数问题
Python转义字符中''的个数问题 如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r' '或者r" "表示''或" "内部 ...