一文精通云服务安装JDK11/Mysql/Nginx/Docker/Compose/Node/Git/Rocketmq容器编排

LTS版本丨Open-JDK11云服务器安装 

1、介绍
作为当下最主流的编程语言,JDK安装是遇最多的,随着JDK8在业界普及,新版OracleJDK也要收费,接下来JDK11就是趋势所在,这里说下他们的区别。
 
OpenJDK和OracleJDK版本区别:
  • OpenJDK是JDK的开放源码版本,以GPL协议的形式发布(General Public License)

  • Oracle JDK采⽤了商业实现

LTS 是啥意思?:
  • Long Term Support ⻓期⽀持的版本,如JDK8、JDK11都是属于LTS

  • JDK9 和 JDK10 这两个被称为“功能性的版本”不同, 两者均只提供半年的技术⽀持

  • 甲⻣⽂释出Java的政策,每6个⽉会有⼀个版本的释出,⻓期⽀持版本每三年发布⼀次,根据 后续的发布计划,下 ⼀个⻓期⽀持版 Java 17 将于2021年发布

 

8u20、11u20是啥意思?就是Java的补丁,⽐如JDK8的 8u20版本、8u60版本; java11的 11u20、11u40版本

 

2、安装JDK8或者open-jdk11环境

 

解压:tar -zxvf jdk-11.0.8_linux-x64_bin.tar.gz  重命名  vim /etc/profile  配置    JAVA_HOME=/usr/local/software/jdk11    CLASSPATH=$JAVA_HOME/lib/    PATH=$PATH:$JAVA_HOME/bin    export PATH JAVA_HOME CLASSPATH  环境变量立刻生效    source /etc/profile
查看安装情况 java -version

 

 三、云计算Docker环境云服务一键安装 
1、介绍

云计算+容器化是当下的主流,也是未来的趋势,就是可以快速部署启动应用,实现虚拟化,完整资源隔离,一次编写,四处运行

 

但有一定的限制,比如Docker是基于Linux 64bit的,无法在32bit的linux/Windows/unix环境下使用

 

2、安装

依次运行以下命令添加yum源。yum updateyum install epel-release -yyum clean allyum list
安装并运行Docker。yum install docker-io -ysystemctl start docker
检查安装结果。docker info
启动使用Dockersystemctl start docker     #运行Docker守护进程systemctl stop docker      #停止Docker守护进程systemctl restart docker   #重启Docker守护进程

一个命令部署Nginxdocker run --rm --name nginx-xdclass -p 8080:80 -d nginx
--rm:容器终止运行后,自动删除容器文件。--name nginx-xdclass:容器的名字叫做nginx-xdclass,名字自己定义.-p: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口-d:容器启动后,在后台运行
docker ps查看容器docker stop 容器id
修改镜像仓库vim /etc/docker/daemon.json#改为下面内容,然后重启docker{"debug":true,"experimental":true,"registry-mirrors":["https://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn"]}
#查看信息docker info

 

 

 四、容器编排Docker-Compose安装实战 

 

1、介绍

我们使用 Docker 的时候,定义 Dockerfile 文件,然后使用 docker build、docker run 等命令操作容器。但是微服务架构的应用系统一般包含若干个微服务,每个微服务一般都会部署多个实例,如果每个微服务都要手动启停,那么效率之低,维护量之大可想而知。

 

使用 Docker Compose 可以轻松、高效的管理容器,它是一个用于定义和运行多容器 Docker 的应用程序工具,容器编排工具,可以配置并启动多个容器,适合复杂业务场景。

 

2、安装

官方:https://docs.docker.com/compose/install/
下载安装包(比较耗时)sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
增加权限sudo chmod +x /usr/local/bin/docker-compose

 五、高性能网关-Nginx云服务器一键安装 

 

1、介绍
据统计,世界上每3个网站中就有一个使用Nginx
市场上使用情况:阿里(Tnginx)、腾讯、百度等,全球反向代理服务器中排名前端-后端-架构-运维基本都离不开Nginx

 

适合人群:

  • 后端开发工程师-中高级工程师

  • 前端开发工程师-中高级工程师

  • 技术leader或者架构师

  • 测试-运维工程师

 

应用场景:  

1)搭建前端静态资源服务器、文件服务器、BAT大厂自研运维平台数据统计案例

2)负载均衡Upstream配置实战、后端节点高可用性探测、全局异常兜底数据配置

3)Nginx封禁恶意IP、配置跨域、location和rewrite实战

4)Websocket配置、后端业务数据缓存前置、静态资源压缩

5)阿里云ECS部署Nginx + HTTPS证书

6)高级拓展Nginx整合Openresty开发内网访问限制、文件资源下载限速实现原理

7) Nginx高可用解决访问 LVS + KeepAlived讲解+多节点配置实操 

 

2、安装

下载压缩包 并上传  http://nginx.org/en/download.html
安装依赖  yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
创建一个文件夹,上传本地提供的nginx包  tar -zxvf nginx-1.18.0.tar.gz  //执行命令(部分报错,可以忽略)  ./configure  make  make install 
默认安装路径  /usr/local/nginx
访问配置  cd /usr/local/nginx/sbin     ./nginx
防火墙开放端口,阿里云网络安全组配置80端口

 

 六、玩转MySql在云服务器一键安装和远程配置 

 

安装Mysql 5.7

(注意,Mysql和系统务必保持一致,不然存在不一致)

 

开启mysql远程连接

(如果是准线上,建议不要开启远程连接)

 

开放阿里云网络安全组配置 3306 端口

1、下载mysql的Yum仓库wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
2、安装 mysql服务yum -y install mysql-community-server
3、启动数据库服务, systemctl 该命令可用于查看系统状态和管理系统及服务,centos7上开始使用systemctl start  mysqld.service
4、查看状态systemctl status mysqld.service
5、在日志文件中查看初始密码grep "password" /var/log/mysqld.log
6、进入修改Mysql密码mysql -uroot -p
7、新密码设置必须由大小写字母、数字和特殊符号组成ALTER USER 'root'@'localhost' IDENTIFIED BY 'Xdclass.net168';
8、开启mysql的远程访问, %是指全部grant all privileges on *.* to 'root'@'%' identified by 'Xdclass.net168' with grant option;
9、刷新权限flush privileges;

 

 

 七、云服务器 最新版NodeJS + Npm 配置 

//有源码的安装方式,执行后记得重新进入终端wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
//重新进入终端, 执行命令nvm install stable
//验证node -v
//切换cnpmnpm install -g cnpm --registry=https://registry.npm.taobao.org

 

 

 八、Git命令在阿里云Linux安装和使用 

 

1、介绍

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

 

与常用的版本控制工具 CVS,Svn 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

 

目前世界上最先进的分布式版本控制系统(没有之一)

 

2、安装

yum install git-core
clone 项目https://github.com/jackxy/xd_blog

 

 

 九、【综合案例】
阿里云-RocketMQ自定义容器编排一键安装部署

 

1、介绍

消息队列是高并发里面必备的技术,但是相关环境安装是比较复杂,目前电商业务用的比较多的是RocketMQ,支持多种常见的消息类型,而且支持分布式事务,但是本身搭建比较麻烦,基础的都包括3个服务,比如NameServer名称服务,Broker队列服务,Console控制台。

 

没有更好的方式进行操作部署rocketmq呢? 看这个就可以,采用docker-compose进行操作

 

2、安装

  • 创建目录:

  • broker.conf

brokerClusterName = DefaultCluster  brokerName = broker-xdckassbrokerId = 0  deleteWhen = 04  fileReservedTime = 48  brokerRole = ASYNC_MASTER  flushDiskType = ASYNC_FLUSH  # 如果是本地程序调用云主机 mq,这个需要设置成 云主机 IPbrokerIP1=192.168.0.117

 

  • docker-compose.yml

version: '3.5'services:  rmqnamesrv:    image: foxiswho/rocketmq:server    container_name: rmqnamesrv    ports:      - 9876:9876    volumes:      - ./logs:/opt/logs      - ./store:/opt/store    networks:        rmq:          aliases:            - rmqnamesrv  rmqbroker:    image: foxiswho/rocketmq:broker    container_name: rmqbroker    ports:      - 10909:10909      - 10911:10911    volumes:      - ./logs:/opt/logs      - ./store:/opt/store      - ./conf/broker.conf:/etc/rocketmq/broker.conf    environment:        NAMESRV_ADDR: "rmqnamesrv:9876"        JAVA_OPTS: " -Duser.home=/opt"        JAVA_OPT_EXT: "-server -Xms128m -Xmx128m -Xmn128m"    command: mqbroker -c /etc/rocketmq/broker.conf    depends_on:      - rmqnamesrv    networks:      rmq:        aliases:          - rmqbroker  rmqconsole:    image: styletang/rocketmq-console-ng    container_name: rmqconsole    ports:      - 8080:8080    environment:        JAVA_OPTS: "-Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"    depends_on:      - rmqnamesrv    networks:      rmq:        aliases:          - rmqconsolenetworks:  rmq:    name: rmq    driver: bridge

 

  • 启动

//启动docker-compose up
//检查网络安全组是否开放端口

 

总结:

上面的我们在Linux云服务器的常见环境安装,而且多采用在线安装,部分采用docker容器化部署。

posted @ 2022-08-27 11:23  CharyGao  阅读(232)  评论(0)    收藏  举报