centos7在线安装 jdk1.8+tomcat+mysql8+nginx+docker

centos7

  1. 在线安装jdk1.8

    1. yum install -y java-1.8.0-openjdk.x86_64
      java默认安装路径/usr/lib/jvm/;
      加入环境变量配置,在/etc/profile 配置文件中加入 java 环境变量:
      vim /etc/profile
      ​
      #java 环境变量内容:
      ​
      #java环境变量
      export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64
      export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
      export PATH=$PATH:$JAVA_HOME/bin
      source /etc/profile
      java -version
  2. 安装tomcat

    1. yum -y install tomcat
      #进入/etc/profile 配置文件
      vim /etc/profile
      ​
      #Tomcat 环境变量内容:
      ​
      #tomcat环境变量
      COMCAT_BASE=/usr/share/tomcat
      COMCAT_HOME=/usr/share/tomcat
      export JAVA_HOME PATH CLASSPATH COMCAT_BASE COMCAT_HOME
      source /etc/profile
      systemctl start tomcat.service
      systemctl status tomcat
      ​
      systemctl status firewalld
      ​
      #执行命令来开启8080端口
      firewall-cmd --permanent --zone=public --add-port=8080/tcp
      ​
      #重启防火墙
      firewall-cmd --reload
      ​
      #验证开启的8080端口是否生效
      firewall-cmd --zone=public --query-port=8080/tcp
      解决FirewallD警告问题
      vi /etc/firewalld/firewalld.conf
      #重启tomcat:
      systemctl restart tomcat
      ​
      #查看tomcat状态:
      systemctl status tomcat
      尝试解决打不开8080的问题
      #下载依赖包
      yum install tomcat-webapps tomcat-admin-webapps
      ​
      #关闭防火墙 
      systemctl stop firewalld
      ​
      #查看防火墙状态
      systemctl status firewalld
      #Tomcat的自启动
      systemctl enable tomcat.service
      ​
      #系统重启
      reboot
      ​
  3. mysql8

    1. #下载mysql8.0的rpm仓库源
      wget https://repo.mysql.com/mysql80-community-release-el7.rpm
      ​
      #安装mysql8.0源
      yum -y install ./mysql80-community-release-el7.rpm
      ​
      #生成yum索引缓存,并查看目录大小
      yum makecache fast
      ​
      #查看正在使用的MySQL repo
      yum repolist all|grep mysql
      ​
      #安装MySQL8.0
      yum install -y mysql-community-common mysql-community-libs mysql-community-libs-compat mysql-community-client mysql-community-server
      ​
      #设置 mysql 开机启动
      systemctl enable mysqld
      ​
      #启动mysql
      systemctl start mysqld
      ​
      cat /var/log/mysqld.log | grep password
      ​
      mysql_secure_installation
      ​
      #随机密码登录
      mysql -uroot -p
      ​
      ​
      #先把root的旧密码置空
      use mysql;
      #备注:Mysql5.7+ password字段 已改成 authentication_string字段
      update user set authentication_string='' where user='root';
      ​
      #重置成新密码
      #备注:Mysql8.0修改密码方式已有变化(此处是个坑,需要注意)
      ​
      #Mysql8.0之前;
      update user set password=password('root') where user='root';
      #Mysql8.0之后;
      alter user 'root'@'localhost' identified by 'root';
      ​
      #显示密码策略
      SHOW VARIABLES LIKE 'validate_password%';
      #校验密码不能等同于用户名
      set global validate_password.check_user_name=OFF;
      #设置最低长度为4
      set global validate_password.length=4;
      #校验设置低级别策略
      set global validate_password.policy=LOW;
      ​
      #显示密码策略
      SHOW VARIABLES LIKE 'validate_password%';
      ​
      ​
      #设置完密码策略后重新输入修改命令,更改后的密码为123456
      alter user 'root'@'localhost' identified by '123456';
      ​
      #退出命令行
      mysql> quit;
      Bye
      ​
      #新密码登录
      mysql -uroot -p123456
      ​
      ​
      #停止服务
      systemctl stop mysqld
      #重启服务
      systemctl restart mysqld
      #查看mysql服务
      systemctl status mysqld
      ​
  4. nginx

    1. yum install yum-utils
      #新建nginx.repo
      vim /etc/yum.repos.d/nginx.repo
      ​
      #nginx.repo内容
      [nginx-stable]
      name=nginx stable repo
      baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
      gpgcheck=1
      enabled=1
      gpgkey=https://nginx.org/keys/nginx_signing.key
      module_hotfixes=true
      ​
      [nginx-mainline]
      name=nginx mainline repo
      baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
      gpgcheck=1
      enabled=0
      gpgkey=https://nginx.org/keys/nginx_signing.key
      module_hotfixes=true
      yum-config-manager --enable nginx-mainline
      ​
      yum install -y nginx
      ​
      systemctl start nginx.service
      ​
      systemctl status nginx
      ​
      #查看防火墙状态
      systemctl status firewalld
      ​
      #执行命令来开启80端口
      firewall-cmd --permanent --zone=public --add-port=80/tcp
      ​
      #重启防火墙
      firewall-cmd --reload
      ​
      #验证开启的8080端口是否生效
      firewall-cmd --zone=public --query-port=80/tcp
      ​
      systemctl enable nginx.service
  5. docker

    1. 一、安装依赖包
      ​
      [root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
      ​
      二、设置yum仓库地址
      ​
      [root@localhost ~]# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
      ​
      [root@localhost ~]# sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
      ​
      三、更新Yum缓存
      ​
      [root@localhost ~]# sudo yum makecache fast
      ​
      四、在线安装docker
      ​
      [root@localhost ~]# sudo yum install -y docker-ce docker-ce-cli containerd.io
      ​
      五、查看docker信息
      ​
      [root@localhost ~]# docker info
      ​
      Client:
      ​
      Context: default
      ​
      Debug Mode: false
      ​
      Plugins:
      ​
      app: Docker App (Docker Inc., v0.9.1-beta3)
      ​
      buildx: Docker Buildx (Docker Inc., v0.10.0-docker)
      ​
      scan: Docker Scan (Docker Inc., v0.23.0)
      ​
      Server:
      ​
      ERROR: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
      ​
      docker尚未启动,报错
      ​
      六、启动docker
      ​
      [root@localhost ~]# systemctl start docker
      ​
      七、docker状态
      ​
      [root@localhost ~]# systemctl status docker
      ​
      docker.service - Docker Application Container Engine
      ​
      Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
      ​
      Active: active (running) since 四 2023-01-26 19:24:36 CST; 12s ago
      ​
      Docs: https://docs.docker.com
      ​
      Main PID: 6284 (dockerd)
      ​
      Tasks: 8
      ​
      Memory: 108.1M
      ​
      CGroup: /system.slice/docker.service
      ​
      └─6284 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
      ​
      八、docker开机启动
      ​
      [root@localhost ~]# systemctl enable docker
      ​
      九、修改镜像默认存储路径
      ​
      查看当前存储路径
      ​
      [root@localhost /]# docker info | grep "Docker Root Dir"
      ​
      Docker Root Dir: /var/lib/docker
      ​
      创建新路径
      ​
      [root@localhost docker]# mkdir -p /data/docker
      ​
      停止服务
      ​
      [root@localhost /]# systemctl stop docker
      ​
      Warning: Stopping docker.service, but it can still be activated by:
      ​
      docker.socket
      ​
      [root@localhost /]# systemctl stop docker.socket
      ​
      reload配置文件
      ​
      [root@localhost /]# systemctl daemon-reload
      ​
      重启服务
      ​
      [root@localhost /]# systemctl restart docker.service
      ​
      查看本地镜像存储修改结果
      ​
      [root@localhost /]# docker info | grep "Docker"
      ​
      app: Docker App (Docker Inc., v0.9.1-beta3)
      ​
      buildx: Docker Buildx (Docker Inc., v0.10.0-docker)
      ​
      scan: Docker Scan (Docker Inc., v0.23.0)
      ​
      Docker Root Dir: /data/docker

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/44210.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

poste邮件服务器搭建

关于poste poste是一款开源邮件服务软件,可以很方便的搭建:SMTP IMAP POP3 反垃圾邮件 防病毒 Web 管理 Web 电子邮件,支持以下特性。 SPF、DKIM、DMARC、SRS 的原生实现,带有简单的向导用于检测木马、病毒、恶意软件的防…

密码学学习笔记(二十):DSA签名与X.509证书

数字签名 下图是一个制作以及使用数字签名过程的通用模型。 假设Bob发送一条消息给Alice,尽管消息并不重要,也不需要保密,但他想让Alice知道消息确实是他本人发的。出于这个目的,Bob利用一个安全的散列函数,比如SHA-…

Linux中deluser和userdel的区别

在Linux系统中,deluser 和 userdel 都是用于删除用户账户的命令,但它们来自不同的用户管理工具,具有一些区别: userdel: userdel 是一个较底层的命令,通常用于删除用户账户。它的主要功能是从系统文件&…

uniapp websocket机制 心跳 重连

在开发程序过程中通信功能还是比较常用到的,本文主要介绍的是uniapp中websocket的使用 websocket建立连接后,断开、心跳机制重新链接的一个过程。 关于uni.connectSocket可仔细阅读uniapp官网中的uni.connetSocket以及连接socket创建的实例SocketTask …

POJ 1064 Cable master 二分搜索

一、思路 再本题目中,输入的所有数字都是只有两位小数,输出的答案也是两位小数,为了简单,我直接把每个数字乘以100,变成整数,然后去二分搜索,二分搜素的比较条件为数组所有元素都除以middle&am…

【小梦C嘎嘎——启航篇】vector 以及日常使用的接口介绍

【小梦C嘎嘎——启航篇】vector 日常使用的接口介绍😎 前言🙌vector 是什么?vector 比较常使用的接口 总结撒花💞 😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧&#xff01…

TypeScript入门指南

TypeScript学习总结内容目录: TypeScript概述 TypeScript特性。Javascript与TypeScript的区别 * TypeScript安装及其环境搭建TypeScript类型声明 * 单个类型声明,多个类型声明 * 任意类型声明 * 函数类型声明 * unknown类型…

css-flex使用

文章目录 flex弹性容器属性flex-directionflex-wrapflex-flowalign-itemsjustify-contentalign-content主轴和侧轴 弹性元素默认大小属性flex-growflex-shrinkalign-selfflex-basisflexorder 高度坍塌flex布局子元素宽度超出父元素 flex 弹性盒,伸缩盒,…

micropython SSD1306/SSD1315驱动

目录 简介 代码 功能 显示ASCII字符 ​编辑 画任意直线 画横线 画竖线 画矩形 画椭圆 画立方体 画点阵图 翻转 反相 滚动 横向滚动 纵向滚动 奇葩滚动 简介 我重新写了一个驱动,增加了一些功能,由于我的硬件是128*64oled单色I2C,我只…

【数据结构】如何用队列实现栈?图文详解(LeetCode)

LeetCode链接:225. 用队列实现栈 - 力扣(LeetCode) 本文默认读者已经掌握栈与队列的基本知识 或者先看我的另一篇博客:【数据结构】栈与队列_字节连结的博客-CSDN博客 做题思路 由于我们使用的是C语言,不能直接使用队…

vue中使用html2canvas+jsPDF实现pdf的导出

导入依赖 html2canvas依赖 npm install html2canvasjspdf依赖 npm install jspdfpdf导出 以导出横向,A4大小的pdf为例 规律:1. html2canvas 中,在保持jsPDF中的宽高不变的情况下,设置html2canvas中的 width 和 height 值越小&a…

npm 不是内部或外部命令,也不是可运行的程序或批处理文件。

遇到问题: 1.遇到问题:npm 不是内部或外部命令,也不是可运行的程序或批处理文件。 2.遇到问题:或者使用npm安装插件时会出现 XXX\node\node_modules\npm不可用 情况 如下图: 分析问题: nodejs在nodejs官网…

分布式ID

分布式ID 背景Snowflake(雪花算法)背景 分布式系统,用什么做为主键呢? uuid 太长(MySQL官方有明确的建议主键要尽量越短越好[4],36个字符长度的UUID不符合要求。)、 无规律(在InnoDB引擎下,UUID的无序性可能会引起数据位置频繁变动,严重影响性能。)SnowflakeLeaf h…

GO学习之 数据库(mysql)

GO系列 1、GO学习之Hello World 2、GO学习之入门语法 3、GO学习之切片操作 4、GO学习之 Map 操作 5、GO学习之 结构体 操作 6、GO学习之 通道(Channel) 7、GO学习之 多线程(goroutine) 8、GO学习之 函数(Function) 9、GO学习之 接口(Interface) 10、GO学习之 网络通信(Net/Htt…

【vue3】同个页面引入多个图表组件实现自适应的方法

首先说明,此方案仅针对vue3项目在同一个页面引入了多个图表组件,因为我发现不能框架不同的引入,resize的写法还不同 window.addEventListener("resize", function() {...// 在此处重新调用即可 }以下是具体写法: 循环…

前端实习第五周周记

前言 每一天做了什么还是要记录一下,不然过两天后就会发现,慢慢遗忘自己的收获与做过的东西。 这周做的是医学检验系统的样本库部分。由于是公司的代码所以不能交代具体,那么久聊一下每天具体做了些什么以及我的一些收获。 周一 周一上午…

【C++】四种强制类型转换

内容来自《C Primer(第5版)》4.11.3 显示转换、6.4 函数重载、19.2.1 dynamic_cast运算符 目录 1. static_cast 2. const_cast 3. reinterpret_cast 4. dynamic_cast 4.1 指针类型的dynamic_cast 4.2 引用类型的dynamic_cast C语言的强制类型转换&…

Unity进阶–通过PhotonServer实现人物选择和多人同步–PhotonServer(四)

文章目录 Unity进阶–通过PhotonServer实现人物选择和多人同步–PhotonServer(四)服务端客户端 Unity进阶–通过PhotonServer实现人物选择和多人同步–PhotonServer(四) 服务端 服务端结构如下: UserModel using System; using System.Collections.Generic; usin…

Qt 编译使用Bit7z库接口调用7z.dll、7-Zip.dll解压压缩常用Zip、ISO9660、Wim、Esd、7z等格式文件(二)

修改qt5 7zip源码编译及使用(含展示进度)一文中的封装类ZlibHelper代码类,继承多线程,使解压,压缩时进度条不影响界面,同时添加压缩文件中的文件预览功能,建议直接看源码 导读 相关代码内容扩展预览内容时获取文件修改…

深入探究arthas的命令

Arthas是一个Java诊断工具,用于在线诊断Java应用程序,以便更轻松地监控和分析应用程序的性能和行为。Arthas中有许多用于诊断Java应用程序的命令。 1. jvm 和 dashboard 命令的区别: jvm:该命令用于显示当前的JVM信息&#xff0c…