ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

第14章 项目部署(Linux)

第14章 项目部署(Linux) 一、课程概述二、Linux概述1、系统安装1介绍Linux系统分为内核版和发行版内核版由Linux核心团队开发、维护免费、开源负责控制硬件发行版基于Linux内核版进行扩展由各个Linux厂商开发、维护有收费版本和免费版本Linux系统发行版Ubuntu以桌面应用为主免费RedHat面向企业用户收费CentOSRedHat的社区版免费 √Fedora功能完备、快速更新免费openSUSE对个人完全免费、图形界面华丽红旗Linux北京中科红旗软件技术有限公司开发Linux系统的安装方式物理机安装直接将操作系统安装到服务器硬件上虚拟机安装通过虚拟机软件安装虚拟机virtualMachine指通过软件模拟的具有完整硬件系统功能、运行在完全隔离环境中的完整计算机系统。VMWare WorkStation √virtualBoxVMLite WorkStation2安装双击安装包安装检查两块虚拟网卡是否存在存在表示安装成功这两块网卡是windows与Linux通信的桥梁安装完毕之后需要配置网络才可以在windows系统上连接虚拟机上的linux系统解压CentOS7双击该文件完成镜像的挂载VMware中打开该虚拟机选择我已移动该虚拟机用户名root密码1234小结2、远程连接1介绍常用的SSH(SecureShell安全外壳协议)远程连接工具Putty、SecureCRT、Xshell、FinalShell等。2安装双击安装完成后连接虚拟机镜像服务器双击打开即可成功使用3、目录结构Linux系统中的目录特点1是所有目录的顶点2.目录结构像一颗倒挂的树Linux系统中的路径/itheima与itheima有区别吗?有/itheima是绝对路径是指根目录/下的itheima目录ithiema是相对路径是指当前目录下的itheima目录三、Linux常用命令Linux命令格式command [-options] [parameter]说明command命令名[-options]选项可用来对命令进行控制也可以省略可选[parameter]参数可以是零个、一个或多个可选使用技巧Tab键自动补全连续两次Tab键给出操作提示使用上下箭头快速调出曾经使用过的命令使用clear命令或ctrll快捷键实现清屏1、目录操作命令1ls作用显示指定目录下的内容语法ls [-al] [dir]选项-a显示所有文件及目录·开头的隐藏文件也会列出-l除文件名称外同时将文件类型d表示目录-表示文件、权限、拥有者、文件大小等信息详细列出提示由于我们使用ls命令时经常需要加入-l选项所以LINUX为ls-l命令提供了一种简写方式即ll2cd作用用于切换当前工作目录即进入指定目录语法cd [dirName]说明.表示目前所在的目录..表示目前目录位置的上级目录表示用户的home目录举例cd .. 切换到当前目录的上级目录cd ~ 切换到用户的home目录cd /usr/local 切换到/usr/local目录cd - 切换到上一次所在目录3mkdir作用创建目录语法:mkdir [─p] dirName说明-p确保目录名称存在不存在的就创建一个。通过此选项可以实现多层目录同时创建举例mkdir itcast 在当前目录下建立一个名为itcast的子目录 mkdir -p itcast/test 在itcast目录中创建test子目录若itcast目录不存在则建立一个4rm作用删除文件或者目录语法:rm [-rf] name说明-r将目录及目录中所有文件目录逐一删除即递归删除-f无需确认直接删除举例rm -r itcast/删除名为itcast的目录和目录中所有文件删除前需确认rm -rf itcast/无需确认直接删除名为itcast的目录和目录中所有文件rm -fhello.txt 无需确认直接删除hello.txt文件2、文件操作命令1cat作用用于显示文件的所有内容语法cat [-n] fileName说明-n由1开始对所有输出的行数编号举例cat /etc/profile查看/etc目录下的profile文件内容2more作用以分页的形式显示文件内容语法more fileName操作说明回车键向下滚动一行空格键向下滚动一屏b返回上一屏q或CtrIC退出more举例more /etc/profile以分页方式显示/etc目录下的profile文件内容3head作用查看文件开头的内容语法head [-n] fileName说明n输出文件开头的n行内容举例head 1.log默认显示1.log文件开头的10行内容head -20 1.log显示1.log文件开头的20行内容4tail作用查看文件末尾的内容语法tail [-nf] fileName说明n输出文件末尾的n行内容f动态读取文件末尾内容并显示通常用于日志文件的内容输出举例 tail 1.log 默认显示1.log文件末尾10行的内容 tail -20 1.log 显示1.log文件末尾20行的内容 tail -f 1.log 动态读取1.log文件末尾内容并显示(实时刷新3、拷贝移动命令1cp2mv4、打包压缩命令1tar5、文本编辑器命令1vi2vim6、查找命令1find2grep四、Linux软件安装1、JDK安装操作步骤:1上传安装包使用FinalShell自带的上传工具将jdk的二进制发布包上传到Linux2解压安装包命令为tar -zxvf jdk-17.0.10_linux-x64_bin.tar.gz -C /usr/local3配置环境变量使用vim命令修改/etc/profile文件在文件末尾加入如下配置export JAVA_HOME/usr/local/jdk-17.0.10export PATH$JAVA_HOME/bin:$PATH4重新加载profile文件使更改的配置立即生效命令为source/etc/profile5检查安装是否成功命令为java -version2、MySQL安装1准备工作卸载Linux系统中自带的mysql/mariadb安装包否则MySQL将安装失败rpm -qa | grep mariadbrpm -e -nodeps mariadb-libs-5.5.60-1.el7_5.x86_642上传安装包下载并上传mysql安装包mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz解压安装包到当前目录并将解压后的文件夹移动到/usr/local目录下改名为mysqltar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz3配置环境变量(编辑/etc/profile追加内容export MYSQL_HOME/usr/local/mysqlexport PATH$MYSQL_HOME/bin:$PATH4注册MySQL为系统服务cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql chkconfig--add mysql5初始化数据库groupadd mysql useradd -r -g mysql -s /bin/false mysql mysqld--initialize--usermysql--basedir/usr/local/mysql--datadir/usr/local/mysql/data 初始化完毕后日志中会输出mysql的root用户的临时密码记得复制记录下来。6启动服务登录MySQLsystemctl start mysqlmysql -uroot-pxxxxx7配置MySQL的root用户的密码授权远程访问ALTER USER rootlocalhost IDENTIFIED WITH mysql_native_password BY 1234创建用户、分配权限、刷新权限CREATE USERrOot% IDENTIFIED BY 1234GRANT ALLPRIVILEGES ON.TO roOt%’FLUSH PRIVILEGES8远程访问测试连接未能成功因为有防火墙的存在mysql -h 192.168.100.128 -p3306 -uroot -p12343、MySQL安装防火墙1防火墙操作查看防火墙状态(systemctl status firewalld、firewall-cmd --state)关闭防火墙(systemctl stop firewalld)开启防火墙(systemctl start firewalld)永久关闭防火墙(systemctl disable firewalld)开放指定端口(firewall-cmd --zonepublic --add-port8080/tcp --permanent)关闭指定端口(firewall-cmd --zonepublic --remove-port8080/tcp --permanent)立即生效(firewall-cmd --reload)查看开放的端口(firewall-cmd --zonepublic --list-ports)注意1、systemctl是管理Linux中服务的命令可以对服务进行启动、停止、重启、查看状态等操作2、firewall-cmd是Linux中专门用于控制防火墙的命令3、为了保证系统安全生产服务器的防火墙不建议关闭2datagram连接Linux数据库导入sql文件4、Nginx安装安装nginx运行时需要的依赖yum install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel上传nginx的源码包解压源码包到当前目录tar -zxvf nginx-1.20.2.tar.gz进入到解压目录(cd nginx-1.20.2)后执行指令: ./configure --prefix/usr/local/nginx执行编译nginx的指令make执行安装nginx的指令安装到上述指定的 /usr/local/nginx 目录make install进入到nginx安装目录/usr/local/nginx启动nginx服务sbin/nginxsql防火墙开放80端口五、项目部署1、前端部署1.将资料\06.项目部署\前端\页面资源文件夹下的打包好的静态资源上传到nginx的html目录中。2.配置nginx的配置文件在conf/nginx.conf中配置反向代理服务器及路径重写规则。3.在nginx的安装目录中执行sbin目录下的nginx命令启动nginx服务sbin/nginx或sbin/nginx -s reload停止Nginx服务sbin/nginx -s quit2、后端部署1打包执行maven的父工程中的package生命周期对项目进行打包 【打包之前先连接上服务器数据库先测试通过】。改一下数据库配置datasource: url: jdbc:mysql://192.168.100.128:3306/tlias driver-class-name: com.mysql.cj.jdbc.Driver username: root password: 1234改一下日志文件存放路径FileNamePattern/user/local/tlias-app/tlias-%d{yyyy-MM-dd}-%i.log/FileNamePatternMaven生命周期跳过单元测试test执行打包操作2上传在linux服务器的/usr/local目录下创建一个目录tlias-app将jar包上传到服务器的 /usr/local/tlias-app 目录中。然后在命令行执行命令运行jar包 java -jar xxxxxx.jar3配置配置阿里云账户密码的环境变量上述执行运行jar包之后,会占用前台窗口,窗口关闭服务也就停了。可以使用 nohup 指令后台运行服务执行指令nohup java -jar xxxxxx.jar tlias.log nohup java -jar tlias-web-management.jar tlias.log 查看进程ps -ef | grep xxxx杀死进程kill -9 进程IDLinux 中的特殊符号|: 管道符。将前面命令的输出作为后面命令的输入。如: ps -ef | grep java与 : 重定向符号。将前面的文本内容输出到后面的文件中 : 覆盖重定向 : 追加重定向。 如: echo Hello Linux 1.log
返回列表