paascloud开源项目学习(2) -- centos7下安装SpringCloud+Vue环境

前言github 开源项目–paascloud-master:https://github.com/paascloud/…paascloud-master 官方环境搭建:http://blog.paascloud.net/201…基本环境rzyum install lrzszzip 和 unzipyum install -y unzip zipvimyum -y install vim* Java 环境jdk 8tar.gz包安装,参考:https://www.cnblogs.com/chy12…rpm包安装,参考:https://www.cnblogs.com/zengh…mysql 5.7下载mysql yum源 版本为5.7下载地址:https://dev.mysql.com/downloads/file/?id=470281查看yum源安装mysql版本上面下载后,yum localinstall mysql57-community-release-el7-11.noarch.rpmvim /etc/yum.repos.d/mysql-community.repo # 确定使用的版本,enable设为1yum install -y mysql-community-server启动mysqlsystemctl status mysqld.servicesystemctl start mysqld.service查看mysql密码cat /etc/my.cnf# log-error=/var/log/mysqld.log# pid-file=/var/run/mysqld/mysqld.pidcat /var/log/mysqld.log | grep password登录mysql数据库mysql -u root -p 修改密钥复杂度配置mysql> set global validate_password_policy=0;mysql> set global validate_password_length=6;修改密码mysql> alter user ‘root’@’localhost’ identified by ‘123456’;远程访问权限mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;mysql> flush privileges;mysql 备份参考博客:https://blog.csdn.net/SWPU_Li…crontab 命令:https://www.cnblogs.com/kensh…dockerdocker 在线安装非常慢,不推荐。依次执行下面命令yum remove docker docker-common docker-selinux docker-engineyum install -y yum-utils device-mapper-persistent-data lvm2yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repoyum-config-manager –enable docker-ce-edgeyum-config-manager –enable docker-ce-testyum-config-manager –disable docker-ce-edgeyum makecache fastyum -y install docker-cesystemctl start dockerdocker run hello-worlddocker imagesREPOSITORY TAG IMAGE ID CREATED SIZEhello-world latest 1815c82652c0 2 months ago 1.84kBdocker 本地安装从官方安装包下载:docker-ce-17.06.0.ce-1.el7.centos.x86_64.rpm。安装yum install /usr/local/src/tool/docker-ce-17.06.0.ce-1.el7.centos.x86_64.rpm -y启动systemctl start docker查看docker版本docker -v开机启动# systemctl enable dockerCreated symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.docker 卸载查看已安装的docker安装包yum list installed|grep docker删除上面显示的安装包列表yum –y remove docker.x86_64.XXX删除docker镜像rm -rf /var/lib/dockerredis 4.0.2redis 单机tar 包安装下载,解压,编译:wget http://download.redis.io/releases/redis-4.0.2.tar.gztar xzf redis-4.0.2.tar.gzcd redis-4.0.2make二进制文件是编译完成后在 src 目录下,通过下面的命令启动 Redis 服务:src/redis-server使用内置的客户端命令 redis-cli 进行使用:# src/redis-cliredis> set foo barOKredis> get foo"bar"停止服务:# 第一种:杀死进程PID,kill -9 PIDps aux|grep redis# 第二种src/redis-cli shutdownyum 安装安装,启动yum install epel-releaseyum install redissystemctl start redis.serviceredis-server /etc/redis.confsystemctl enable redis常用配置vi /usr/local/redis-4.0.2/redis.confrequirepass paasword #配置密码# bind 127.0.0.1 #允许远程访问daemonize yes #后台启动自定义配置启动src/redis-server ../redis.confsrc/redis-cli -a paaswordredis 集群参考博客:http://blog.paascloud.net/201…docker 下安装 redisdocker run -d -p 6379:6379 redis:4.0.8 –requirepass “123456"nginx 1.14.X下载对应当前系统版本的 nginx 包wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm建立 nginx 的 yum 仓库rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm安装 nginxyum -y install nginx启动 nginxsystemctl start nginx版本号nginx -vnginx version: nginx/1.14.1默认配置文件路径/etc/nginx/nginx.confrocketmq 4.2.X主要是搭建集群环境同步双写(2m-2s-sync)参考博客:http://blog.paascloud.net/201…异步复制(2m-2s-async)参考博客:https://blog.csdn.net/weixin_… 注意:如果 broker 启动失败,可能是 runbroker.sh、runserver.sh 里的内存大小设置默认过大。RocketMQ Web管理界面rocketmq 提供多种管理方式,命令行和界面等,apache 提供一个开源的扩展项目: https://github.com/apache/roc… 里面包含一个子项目 rocketmq-console,配置下,打个包就可以用了。或者可以百度搜索一下rocketmq-console.war。具体安装参考博客:https://www.jianshu.com/p/e5b…rabbitmq 3.7.3参考博客:http://blog.paascloud.net/201…zookeeper 3.4.X单机、集群、伪集群:https://www.cnblogs.com/sundd…paascloue 集群环境:http://blog.paascloud.net/201…命令启动 rabbitmq/etc/init.d/rabbitmq-server start # 或 service rabbitmq-service start 启用 RabbitMQWeb 管理插件用户名/密码:guest/guest启动rabbitmq-plugins enable rabbitmq_management 访问(修改为自己 ip):http://192.168.241.101:15672/启动 zookeeper根据上面参考博客1搭建的伪集群,因为配置文件在一个机器上的 zookeeper 目录下,所以启动时对应不同的配置文件。进入zookeeper的 conf目录下cd /root/software/zookeeper-3.4.9/conf启动# 添加了环境变量zkServer.sh start zoo1.cfgzkServer.sh start zoo2.cfgzkServer.sh start zoo3.cfg查看状态zkServer.sh status zoo1.cfgzkServer.sh status zoo2.cfgzkServer.sh status zoo3.cfg启动 zookeeper 图形化界面zookeeper 图形化的客户端工具–ZooInspector,具体使用参考博客:https://blog.csdn.net/qq_2685…。启动 zookeeper 集群后,运行 ZooInspector jar 包,当 paascloud 项目启动后,出现下面效果启动 rocketmq 集群根据上面 rocketmq集群 目录下的第一个参考博客来启动。2m-2s-sync。启动 NameServer A 192.168.241.101nohup sh /usr/local/rocketmq/bin/mqnamesrv &启动 NameServer A 192.168.241.102nohup sh /usr/local/rocketmq/bin/mqnamesrv &启动 BrokerServer A-master 192.168.241.101nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a.properties&启动 BrokerServer A-slave 192.168.241.101nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a-s.properties&启动 BrokerServer B-master 192.168.241.102nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-b.properties&启动 启动BrokerServer B-slave 192.168.241.102nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-b-s.properties&查看日志netstat -ntlpjpstail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.logtail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log停止服务sh /usr/local/rocketmq/bin/mqshutdown namesrvsh /usr/local/rocketmq/bin/mqshutdown broker清理数据rm -rf /usr/local/rocketmq/data/masterrm -rf /usr/local/rocketmq/data/slavemkdir -p /usr/local/rocketmq/data/master/store/commitlogmkdir -p /usr/local/rocketmq/data/slave/store/commitlogmkdir -p /usr/local/rocketmq/data/master/store/consumequeuemkdir -p /usr/local/rocketmq/data/slave/store/consumequeuemkdir -p /usr/local/rocketmq/data/master/store/indexmkdir -p /usr/local/rocketmq/data/slave/store/indexrocketmq 集群控制台启动解压在tomcat目录,./tomcat/bin/startup.sh 启动即可。访问地址:http://192.168.0.110:8080/roc… ...

January 23, 2019 · 2 min · jiezi

阿里云 ECS服务器(CentOS 7)安装和使用Nexus教程

1、前言最近项目需要搭建maven私服,方便管理后期团队成员使用上传自己的包,因此决定使用nexus来搭建私服,搭建好的nexus地址。2、准备工作 阿里云服务器ECS一台 1核CPU 2G内存(注意:最低为2G,否则运行报错)3、开始安装3.1 安装javajava的安装网上的文章好多,不过我是自己写的shell文件安装的,如下:#!/bin/bash# jdk install# 请将下载的jdk-xxx-linux-xxx.tar.gz包与此脚本放置到同一目录# 授予此脚本可执行权限(chmod +x install_jdk.sh)# 在终端执行此脚本开始安装(./文件名)# 注意:不可有多个版本的jdk包!# 为了使配置的环境变量生效,安装完成后你应该重新登陆。jvmpath=/usr/local/java# 不存在if [ ! -d “$jvmpath” ]; then echo “正在创建$jvmpath目录” sudo mkdir $jvmpath echo “目录$jvmpath创建成功"fijdkfile=$(ls | grep jdk--linux-.gz)jdkdirname=“jdk1.8.0_201"if [ ! -f “$jdkfile” ]; then echo “正在下载jdk请稍等…” wget –no-cookies –no-check-certificate –header “Cookie: oraclelicense=accept-securebackup-cookie” “https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz"fijdkfile=$(ls | grep jdk--linux-.gz)if [ -f “$jdkfile” ]; then sudo tar -zxvf $jdkfile -C /usr/local/java/ echo “安装JDK成功” echo “配置环境变量” mv ~/.bashrc ~/.bashrc.backup.java cat ~/.bashrc.backup.java >> ~/.bashrc echo “PATH="$PATH:$jvmpath/$jdkdirname/bin"” >> ~/.bashrc echo “JAVA_HOME=$jvmpath/$jdkdirname” >> ~/.bashrc echo “CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar” >> ~/.bashrc source ~/.bashrc echo “配置环境成功” echo “测试是否安装成功” java -version echo “安装成功"fi执行该shell文件,如下所示:3.2 安装mavenmaven安装我也是自己写的shell文件,如果你们不想用我的可以到网上找文章看看吧,下面是我的shell文件:#!/bin/bash# maven installmvnpath=/usr/local/maven# 不存在if [ ! -d “$mvnpath” ]; then echo “正在创建$mvnpath目录” sudo mkdir $mvnpath echo “目录$mvnpath创建成功"fi#apache-maven-3.6echo “正在下载maven安装包,请稍等…“wget –no-cookies –no-check-certificate –header “Cookie: oraclelicense=accept-securebackup-cookie” “http://211.162.31.136/files/71480000031E20AE/mirrors.hust.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz"mvnfile=$(ls | grep apachemaven-.gz)if [ -f “$mvnfile” ]; then #这个名字其实就是mvn .tar.gz解压之后的文件夹的名字 mvndirname=“apache-maven-3.6.0” #不能加 用’zxvf’ 加了 z 就创建了包里面的apace* 文件夹,而我们只要把apace文件夹下的文件全部解压到 mvnpath里面就好 tar zxvf $mvnfile -C $mvnpath echo “安装maven成功” echo “配置环境变量” mv ~/.bashrc ~/.bashrc.backup.mvn cat ~/.bashrc.backup.mvn >> ~/.bashrc echo “PATH="$PATH:$mvnpath/$mvndirname/bin"” >> ~/.bashrc echo “MAVEN_HOME=$mvnpath/$mvndirname” >> ~/.bashrc source ~/.bashrc echo “配置环境成功” echo “测试是否安装成功” mvn -v echo “安装成功"else echo “没有找到maven文件"fi执行该shell文件,如下所示:3.3 安装nexusnexus虽然我也是使用shell文件安装,但有些配置我们还是要手动设置,下面是安装shell文件:#!/bin/bash#判断是否是roo用户if [ $(id -u) != “0” ]; then echo “Error:You must be root to run this script"fi#每次使用只需修改自定义内容即可#自定义用户名和组Group_Name=“nexus"User_Name=“nexus”#自定义nginx变量Install_Path="/usr/local/nexus"Version=“nexus-3.15.0-01"Package_Type=".tar.gz"Package=$Version$Package_Type#创建/usr/local/nexus目录#mkdir /usr/local/nexusif [ -e $Install_Path ]then echo " $Install_Path 目录已经存在.” echo " $Install_Path Directory Already Exists.“else echo " $Install_Path 目录正在创建.” mkdir $Install_Pathfi#下载nexus 文件Setup_path="/root/“cd $Setup_pathwget https://sonatype-download.global.ssl.fastly.net/repository/repositoryManager/3/nexus-3.15.0-01-unix.tar.gzGroup_User(){egrep “^$Group_Name” /etc/group >& /dev/nullif [ $? -ne 0 ]then echo “nexus 用户组正在添加.” groupadd $Group_Nameelse echo " The $Group_Name user group already exists.” echo “nexus 用户组已经添加.“fi#判断nexus用户是否存在egrep “^$User_Name” /etc/passwd >& /dev/nullif [ $? -ne 0 ]then echo “nexus 用户正在添加.” useradd -g $Group_Name $User_Nameelse echo “nexus 用户已经添加.” echo " The $User_Name user already exists.“fi}Group_User# 设置/usr/local/nexus 目录所属组和用户是nexuschown -R nexus:nexus $Install_Path#判断文件是否存在if [ -e $Setup_path$Version$Package_Type ]then echo “$Package The Package exists.“else echo “$Package The package does not exist.“ficd $Setup_path#解压nexus包到/usr/local/nexustar -zxvf $Package -C $Install_Pathecho ‘设置环境变量’mv ~/.bashrc ~/.bashrc.backup.nexuscat ~/.bashrc.backup.nexus >> ~/.bashrcecho “NEXUS_HOME=$Install_Path/$Version” >> ~/.bashrcecho “PATH="$PATH:$NEXUS_HOME/bin"” >> ~/.bashrc# 切换nexus用户su nexusecho ‘接下来配置:1、vim bin/nexus.rc run_as_user=“nexus”’ 安装完成之后,我们到/usr/local/nexus/nexus-3.15.0-01/bin目录下修改nexus文件# 设置本地jdk目录INSTALL4J_JAVA_HOME_OVERRIDE="/usr/local/java/jdk1.8.0_201” 接着,我们相同目录下nexus.rc文件,如下 # 指定用户是nexus而不是root,如果是root会出现警告!run_as_user=“nexus” 好了,这样就安装好了,我们访问下网站,注意默认端口是8081,账号:admin,密码:admin123 3.4 免费申请阿里云SSL证书购买成功之后,配置好域名,我这里的域名是: nexus.awbeci.com,设置好之后等待审核,审核成功之后选择nginx版本并下载证书下载完成之后是个.zip的压缩包,我们上传到服务器上,使用下面命令:scp your-cert.zip root@your-server-ip:/your-server-directory上传成功之后我们等待下一步操作。3.5 安装nginx并代理nexus 8081端口,同时配置https访问因为访问网站的时候端口是8081,所以想要使用80端口访问的话,我们就用nginx 80端口代理8081,同时设置https访问 安装nginx 我们还是通过shell文件来安装,如下 #!/bin/bash#判断是否是roo用户if [ $(id -u) != “0” ]; then echo “Error:You must be root to run this script"fi#每次使用只需修改自定义内容即可#自定义用户名和组Group_Name=“nginx"User_Name=“nginx”#自定义nginx变量Install_Path="/usr/local/nginx"Package_Type=".tar.gz"Version=“nginx-1.15.8"Package=$Version$Package_TypeSetup_path="/root/“RPM=“nginx”#创建/usr/local/nginx目录#mkdir /usr/local/nginxif [ -e $Install_Path ]then echo " $Install_Path 目录已经存在.” echo " $Install_Path Directory Already Exists.“else echo " $Install_Path 目录正在创建.” mkdir $Install_Pathfi #下载nginx 文件cd $Setup_pathwget http://nginx.org/download/nginx-1.15.8.tar.gz#安装依赖关系yum group install “Development Tools” “Server Platform Deveopment"yum install -y curl openssl-devel pcre-develGroup_User(){egrep “^$Group_Name” /etc/group >& /dev/nullif [ $? -ne 0 ]then echo “nginx 用户组正在添加.” groupadd $Group_Nameelse echo " The $Group_Name user group already exists.” echo “nginx 用户组已经添加.“fi#判断nginx用户是否存在egrep “^$User_Name” /etc/passwd >& /dev/nullif [ $? -ne 0 ]then echo “nginx 用户正在添加.” useradd -g $Group_Name $User_Nameelse echo “nginx 用户已经添加.” echo " The $User_Name user already exists.“fi}Group_User#判断文件是否存在if [ -e $Setup_path$Version$Package_Type ]then echo “$Package The Package exists.“else echo “$Package The package does not exist.“fi#编译安装nginxcd $Setup_path#解压nginx包到/usr/local/nginx tar -zxvf $Package -C $Install_Pathcd $Install_Pathcd $Versionconfigure_opts=( –prefix=$Install_Path –user=nginx –group=nginx –with-http_ssl_module –with-http_flv_module –with-http_stub_status_module –with-http_gzip_static_module )./configure ${configure_opts[@]}if [[ $? -eq 0 ]]then make && make installelse echo “编译失败,请重新编译” && exit 1fi#添加Nginx命令到环境变量cat >/etc/profile.d/nginx.sh <<EOFexport PATH=/usr/local/nginx/sbin/:$PATHEOFsource /etc/profile#启动服务/usr/local/nginx/sbin/nginxss -tnlp | grep nginx 安装成功后,我们把一步上传的证书.zip复制到/root文件夹下,并解压缩,如下: # 创建ssl文件夹mkdir -p /usr/local/nginx/cert# 把上一步的.zip证书解压并复制到ssl文件夹下unzip /root/your-cert-package.zip# 解压之后应该是两个文件.pem和.key# 复制.crt和.key文件到ssl目录下cp your-cert.crt your-cert.key /usr/local/nginx/cert 设置好之后,接下来我们配置/usr/local/nginx/conf/nginx.conf文件,如下所示:#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; client_max_body_size 100m; client_header_timeout 1m; client_body_timeout 1m; proxy_connect_timeout 18000; ##修改成半个小时 proxy_send_timeout 18000; proxy_read_timeout 18000; #log_format main ‘$remote_addr - $remote_user [$time_local] “$request” ’ # ‘$status $body_bytes_sent “$http_referer” ’ # ‘"$http_user_agent” “$http_x_forwarded_for”’; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name nexus.awbeci.com; return 301 https://nexus.awbeci.com$request_uri; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://127.0.0.1:8081; #代理8081端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; } } # HTTPS server # server { listen 443 ssl; server_name nexus.awbeci.com; ssl_certificate /usr/local/nginx/cert/nexus.awbeci.com.pem; ssl_certificate_key /usr/local/nginx/cert/nexus.awbeci.com.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { proxy_pass http://127.0.0.1:8081; #代理8081端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; } }} 这样就成功的配置好了,现在我们重启下nginx,并访问nexus.awbeci.com网站看看 # 重启nginx/usr/local/nginx/sbin/nginx -s reload4、开始使用Nexus4.1 Nexus介绍这里有一篇文章写得非常好,大家可以看看,我就不特别详细的写介绍了,主要还是告诉你们怎么结合项目使用。4.2 创建Blob Stores4.3 创建User4.4 创建阿里云的代理仓库然后再public组里面将这个aliyun-proxy仓库加入,排在maven-central之前即可4.5 创建Host仓库 策略是release4.6 创建Host仓库 策略是snapshots创建好之后我们再来Public设置下优先顺序,把刚才加的两个仓库放到aliyun-proxy前面创建完仓库预览4.7 配置本地maven settings.xml提示:两种配置方法,一种是直接配置maven目录下的conf下的settings.xml文件,另外一种是复制该文件到用户目录下的.m2目录,两种方法配置效果是一样的,看个人喜好了,加载顺序是.m2下的settings.xml目录接着是maven config目录下的settings.xml,配置文件如下:<?xml version=“1.0” encoding=“UTF-8”?><settings xmlns=“http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=“http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <pluginGroups> </pluginGroups> <proxies> </proxies> <servers> <!–这里配置我们刚才创建的user用户所对应的releases–> <server> <id>releases</id> <username>user</username> <password>123456</password> </server> <!–这里配置我们刚才创建的user用户所对应的Snapshots–> <server> <id>Snapshots</id> <username>user</username> <password>123456</password> </server> </servers> <mirrors> <!– <mirror> <id>nexus-aliyun</id> <mirrorOf></mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror> –> <!–这里配置我们线上的public仓库就好–> <mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>https://nexus.awbeci.com/repository/maven-public/</url> </mirror> </mirrors> <profiles> </profiles> <activeProfiles> <activeProfile>dev</activeProfile> </activeProfiles></settings>4.8 配置要上传到nexus项目pom.xml文件 <packaging>jar</packaging> <distributionManagement> <!–配置线上releases仓库地址,只要是正式版本都会上传到该地址(注意要和settings.xml文件里面的配置名称相同)–> <repository> <id>releases</id> <url>https://nexus.awbeci.com/repository/awbeci/</url> </repository> <!–配置线上Snapshots仓库地址,只要是快照版本都会上传到该地址(注意要和settings.xml文件里面的配置名称相同)–> <snapshotRepository> <id>Snapshots</id> <url>https://nexus.awbeci.com/repository/awbeci-snapshots/</url> </snapshotRepository> </distributionManagement> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.1</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> <executions> <execution> <id>deploy</id> <phase>deploy</phase> <goals> <goal>deploy</goal> </goals> </execution> </executions> </plugin> </plugins> </build></project>4.9 编辑并发布jar包mvn clean && mvn deploy -DskipTests=true执行完成后,我们到线上看看是否上传成功可以看到不管是release版本还是snapshot版本都上传并发布成功4.10 测试发布的包自己新建一个maven项目,然后引入我们刚才发布的release包<dependency> <groupId>com.awbeci</groupId> <artifactId>awbeci-core</artifactId> <version>1.0.8-SNAPSHOT</version></dependency>执行该代码,如下所示:测试成功!!!4.10 上传第三方包有两种方式,一种是命令mvn deploy:deploy-file \ -DgroupId=<group-id> \ -DartifactId=<artifact-id> \ -Dversion=<version> \ -Dpackaging=<type-of-packaging> \ -Dfile=<path-to-file> \ -DrepositoryId=<server-id-settings.xml> \ -Durl=<url-of-the-repository-to-deploy>另外一种是使用Nexus上传两种方式结果都是一样,就看你偏向哪种了。5、总结 1)服务器内存刚开始配置是1CPU 1G 内存,nexus start运行之后报错,升级服务器为2G内存之后就没问题了 2)nexus 默认是8081端口,我们可以修改文件/usr/local/nexus/nexus-3.15.0-01/etc/nexus-default.properties## DO NOT EDIT - CUSTOMIZATIONS BELONG IN $data-dir/etc/nexus.properties### Jetty section# 设置成自己想要的端口application-port=8081application-host=0.0.0.0nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xmlnexus-context-path=/# Nexus sectionnexus-edition=nexus-pro-editionnexus-features=\ nexus-pro-feature值得注意的是不能把端口直接改成80,这样你就不能启动nexus,所以我们是通过nginx 80端口代理8081端口了。3)nexus 配置内存是在 /usr/local/nexus/nexus-3.15.0-01/bin/nexus.vmoptions-Xms1200M-Xmx1200M-XX:MaxDirectMemorySize=2G-XX:+UnlockDiagnosticVMOptions-XX:+UnsyncloadClass-XX:+LogVMOutput-XX:LogFile=../sonatype-work/nexus3/log/jvm.log-XX:-OmitStackTraceInFastThrow-Djava.net.preferIPv4Stack=true-Dkaraf.home=.-Dkaraf.base=.-Dkaraf.etc=etc/karaf-Djava.util.logging.config.file=etc/karaf/java.util.logging.properties-Dkaraf.data=../sonatype-work/nexus3-Djava.io.tmpdir=../sonatype-work/nexus3/tmp-Dkaraf.startLocalConsole=false4)最好自己创建nexus用户,不要使用root用户启动nexus否则会出现警告WARNING: ************************************************************WARNING: Detected execution as “root” user. This is NOT recommended! WARNING: ************************************************************Starting nexus6、引用Maven私服Nexus3.x环境构建操作记录Nexus 3.x Linux环境搭建(手把手) 排坑之旅Centos7.3安装nexus-3.14.0-04搭建nexus3版的maven私服(Centos7环境)Gitlab+Nexus Maven部署Linux 使用 Nexus3.x 搭建 Maven 私服指南maven私服nexus3.x搭建与使用centos7搭建nexus maven私服centos7搭建nexus maven私服Maven NexusNexus 私有仓库搭建与 Maven 集成Nexus max file descriptorsmaven私服nexus3.x环境配置搭建Maven私服-Nexus ...

January 19, 2019 · 4 min · jiezi

阿里云 ECS服务器(CentOS 7)安装和使用Gitlab教程

1、前言因本人创业需要,要建立一个Gitlab代码托管服务器方便团队人员使用,所以把相关过程记录下来分享给大家。2、准备工作我使用的是阿里云服务器ECS,系统是CentOS7.6,配置是 2核CPU 4GB内存,Gitlab官网推荐最低内存是4G。3、开始安装打开gitlab中文网安装地址,推荐Omnibus 包安装安装3.1 安装依赖包yum install -y curl policycoreutils-python openssh-serversystemctl enable sshdsystemctl start sshdfirewall-cmd –permanent –add-service=http(在aliyun ECS 安全规则组里面设置,这里可以不用设置)systemctl reload firewalld(同上)3.2 下载并执行安装gitlab的shell文件curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash3.3 设置自己的域名并且安装gitlab-eesudo EXTERNAL_URL=“http://gitlab.example.com” yum install -y gitlab-ee3.4 安装完成执行完上面几个步骤成功之后就可以访问gitlab了。如果你们发现80端口不能访问,就要看看是不是阿里云服务器的安全组规则有没有设置,如果没有设置一下就好,下面是我的安全组规则。3.5 免费申请阿里云SSL证书购买成功之后,配置好域名,我这里的域名是: gitlab.awbeci.com,设置好之后等待审核,审核成功之后选择nginx版本并下载证书下载完成之后是个.zip的压缩包,我们上传到服务器上,使用下面命令:scp your-cert.zip root@your-server-ip:/your-server-directory上传成功之后我们等待下一步操作。3.6 配置https打开官方文档配置https一节,执行下面命令编辑/etc/gitlab/gitlab.rb文件:vim /etc/gitlab/gitlab.rb把http域名换成https,如下:external_url “https://gitlab.example.com"编辑完成之后保存并退出,在/etc/gitlab下执行下面命令:# 创建ssl文件夹mkdir -p /etc/gitlab/ssl# 设置成可读chmod 700 /etc/gitlab/ssl# 把上一步的.zip证书解压并复制到ssl文件夹下unzip /root/your-cert-package.zip# 解压之后应该是两个文件.pem和.key(注意:要把.pem后缀文件改成.crt)cp your-cert.crt your-cert.key /etc/gitlab/ssl/设置好之后,重启gitlab,执行下面命令:gitlab-ctl reconfigure重启之后访问gitlab应该已经是https了。3.7、配置阿里云服务器邮件推送第一:新建域名,我新建的是system.awbeci.com第二:DNS解析第三:解析完成之后,验证通过。第四:新建发信地址第五:设置SMTP密码3.8 配置gitlab相关SMTP属性打开gitlab官方文档设置SMTP一节,还是编辑/etc/gitlab/gitlab.rb文件按照上面给出的设置设置成你自己刚才在阿里云邮件推送里面的配置,设置好之后重启gitlab:gitlab-ctl reconfigure刷新地址,然后我们注册一个用户,看看邮箱是否发送成功,我自己用新的邮箱注册了gitlab之后,到自己注册的邮箱下面看看确实发送成功了。这样我们安装gitlab就完美成功了,下面我们看看如果使用gitlab了4、使用搭建好的gitlab4.1 本地生成ssh密钥执行下面命令生成,如下:ssh-keygen -t rsa -C ‘your-register-gitlab-email’执行完成之后会出现两个文件:id_rsa_awbeci和id_rsa_awbeci.pub4.2 配置gitlab公钥把你生成好的id_rsa_awbeci.pub文件内容复制到上面并点击添加。4.3 测试是否添加正确因为我是多git用户,我使用了如github,gitee等等托管服务器,所以我要配置下.ssh文件夹下的config文件vim /Users/zhangwei/.ssh/config,如果你们不是多用户这步可省略。# gitlab.awbeci.comHost gitlab-awbeciHostName gitlab.awbeci.comUser your-nameIdentityFile /Users/zhangwei/.ssh/id_rsa_awbeci配置好之后,执行下面命令:ssh-add id_rsa_awbeci接着测试试试:☁ .ssh ssh -T git@gitlab.awbeci.comWelcome to GitLab, @zhangwei!☁ .ssh到此我们安装和配置gitlab ssh都成功完成,后面就是创建项目,添加代码了,这个就不做详细说明了,不明白的可以到网上百度看看如果使用git文章。5、总结:1)像我配置https和smtp都是参考官网的文档的,所以如果有问题及时到官网找找看2)我在成功安装好之后浏览gitlab.awbeci.com的时候不是跳转到登录页面而是到设置密码页面,刷新也不行,到现在都不知道怎么回事,是因为chrome的原因吗,我用firefox没这个问题3)如果你们有什么问题,可以加我QQ群:4646965506、参考GitLab Installation配置Https配置SMTP官方安装文档CentOS 7 下 GitLab安装部署教程如何将.pem转换为.crt和.key?阿里云GitLab的安装及使用 ...

January 17, 2019 · 1 min · jiezi

VMware WorkStation15 + CentOS7 虚拟机配置初始化

1、安装VM-ToolsVMware Workstation —> VM —> Reinstall VMware Toolstar -zxvf /tools/VMwareTools-10.3.2-9925305.tar.gz -C /root//vmware-tools-distrib/vmware-install.pl2、Linux不休眠vim /etc/systemd/logind.confHandleLidSwitch=lock3、修改IP地址(静态)与DNSvim /etc/sysconfig/network-scripts/ifcfg-ethXXXXDNS1=114.114.114.114BOOTPROTO=staticIPADDR=192.168.156.120GATEWAY=192.168.156.2NETMASK=255.255.255.0NM_CONTROLLED=noONBOOT=yes4、重启网络服务service network restart5、永久关闭防火墙和Selinuxsystemctl stop firewalld.servicesystemctl disable firewalld.servicechkconfig iptables offsetenforce 0vi /etc/selinux/configSELINUX=disabled6、重启Linuxreboot7、注意事项(1)查看虚拟机网关与IP地址范围VMware Workstation—>Edit—>Vitual Network Editor—>NAT VMnet8—>NAT Settings—>Gateway IPVMware Workstation—>Edit—>Vitual Network Editor—>NAT VMnet8—>DHCP Settings —>Starting/Ending IP address(2)修改虚拟机网关或IPVMware Workstation—>Edit—>Vitual Network Editor—>Change Settings—>授权—>进入对应位置修改(3)Linux的ip地址、网关的设置与虚拟机的网卡设置要相匹配

January 16, 2019 · 1 min · jiezi

LNMP+HAProxy+Keepalived负载均衡(五)- 通过rsyncd实现文件的相互同步

上接前文,前文提到web服务器附件不同步的问题,这里补上文件同步的配置。安装同步软件# 安装同步服务所需的软件yum -y install rsync配置密码本mkdir -p /etc/rsyncfg/# 注意:下面的两个SyncPwd必须一致echo ‘SyncName:SyncPwd’ > /etc/rsyncfg/server.pwdecho ‘SyncPwd’ > /etc/rsyncfg/client.pwd# 密码文件配置权限chmod 600 /etc/rsyncfg/server.pwdchmod 600 /etc/rsyncfg/client.pwd配置防火墙端口# 开启防火墙端口firewall-cmd –zone=public –add-port=873/tcp –permanentfirewall-cmd –reload配置同步软件# 编辑配置文件vim /etc/rsyncd.conf# 配置文件内容uid = rootgid = rootuse chroot = yesmax connections = 4exclude = lost+found/transfer logging = yestimeout = 900ignore nonreadable = yesdont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2[uploads]path = /home/wwwroot/PublishPath/uploadscomment = Host:192.168.6.100 uploads filesignore errorsread only = yeswrite only = nolist = noauth users = syncersecrets file = /etc/rsyncfg/server.pwdhosts allow = 192.168.6.110重启服务service rsyncd restart && service rsyncd status执行同步操作echo ’’ > /etc/rsyncfg/sync.logecho ‘rsync -auv –password-file=/etc/rsyncfg/client.pwd SyncName@192.168.6.100::uploads /home/wwwroot/PublishPath/uploads/’ > /etc/rsyncfg/sync.shchmod +x /etc/rsyncfg/sync.shcp /etc/rsyncfg/sync.sh /usr/sbin/配置计划任务crontab -e# 添加任务# * * * * * /etc/rsyncfg/sync.sh # 取消前面的注释即可# 重启定时任务服务service crond restart && service crond status问题汇总ERROR: auth failed on module XXX@ERROR: auth failed on module XXXrsync error: error starting client-server protocol (code 5) at main.c(xxx) [Receiver=x.x.x]1、密码输入错误:请再次确认你登录用户的密码无误2、secrets file格式错误:secrets file的文件格式是 upload:123456表示upload用户的rsync密码是1234563、配置文件写错:最坑爹的一个,看看自己模块配置下面的auth users、secrets file有没写错4、secrets file权限问题服务端的secrets file权限必须是600,可以使用chmod 600 /home/user/test/rsync/etc/test.pass5、secrets file文件拥有者与rsync运行者服务端rsync服务是以什么用户运行,则必须保证secrets file文件拥有者必须是同一个假设root运行rsync –daemon,则secrets file的owner也必须是root6、如果是以–password-file=file的方式附带密码确保客户端密码文件格式无误,与服务端的密码文件不同,客户端的不用加上用户名,即直接是 123456rsync: failed to connect to X.X.X.X Connection timed out (110)rsync: failed to connect to 192.168.6.100 (192.168.6.100): Connection timed out (110)rsync error: error in socket IO (code 10) at clientserver.c(125) [Receiver=3.1.2]端口不通,开启防火墙的873端口:firewall-cmd –zone=public –add-port=873/tcp –permanentfirewall-cmd –reloadERROR: password file must not be other-accessibleERROR: password file must not be other-accessiblersync error: syntax or usage error (code 1) at authenticate.c(196) [Receiver=3.1.2]密码本权限不对:chmod 600 /etc/rsyncfg/server.pwdchmod 600 /etc/rsyncfg/client.pwd ...

January 14, 2019 · 1 min · jiezi

Centos下搭建git

1.首先安装git,使用yum在线安装[root@localhost ~]# yum install -y git[root@localhost ~]# git –versiongit version 1.7.12.创建一个git用户,来运行git服务[root@localhost home]#adduser git 或者可以使用[root@localhost home]# useradd git [root@localhost home]# passwd git3.创建空仓库cd /home/gitmkdir project.gitcd project.gitgit init –barecd ..chown -R git:git project.git/4.在服务器端开RSA认证 vim /etc/ssh/sshd_config修改以下三个选项并重启RSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys 重启命令-> systemctl restart sshd.service这里我们所知的是.ssh/authorized_keys这个是公钥存储的地方,是在/home/git/下的.ssh/下存放,实际目录/home/git/.ssh/authorized_keys。如果需要免密登录,需要将自己客户端的id_rsa.pub公钥填写进去改文件(一行一个),如果该文件不存在则自行创建 并且修改权限 为600 例:如我的用户为git来管理git服务器 则还需要将 该文件的拥有者和群组修改 chown git:git authorized_keys5.客户端clone格式:git clone 用户名@xxx.xxx.xx.xx:/home/git/初始化仓库目录文件例子:git clone git@192.168.0.109:/home/git/project.git如果需要免密登录则看上栏配置,与ssh建立信任总结:免密登录是个坑,多半免密登录不了的都是权限没有调整好或没开启RSA认证,仅以此文件避免日后踩坑

January 3, 2019 · 1 min · jiezi

Windows 7 下硬盘安装 CentOS 7

背景起因是希望装 Jenkins 做持续集成,遂征用了一台同事淘汰的笔记本电脑来作为一个临时服务器。笔记本电脑所装系统是 Windows,为了最大化电脑性能以及稳定,希望更换成 Linux 系统。加上自己对 CentOS 相对比较熟悉,选择了最新版的 CentOS 7 进行安装。相关软件版本笔记本电脑系统:Windows 7 UltimateWindows 文件系统:NTFS待安装 Linux 系统: CentOS 7.6.1810难点介绍由于 Linux 的文件系统与 Windows 存在差异:Linux 系统能识别 Windows 下 FAT32 文件系统,不能识别 NTFS 文件系统,所以在 Linux 安装时,选择任何 sda 都不行,FAT32可以FAT32 文件系统单个文件不能超过 4GCentOS 7.6文件大于 4G (最小安装镜像也许不存在这个问题,笔者未尝试)所以:在 Win7 下使用 FAT32 和 NTFS 系统存放安装 ISO 都不可行,则要想办法用工具分出一块 Linux 文件系统,如:ext3,不受 4G 的限制准备工作需要准备的软件CentOS 7: 64位安装文件,这个是必须有的。deamon tools:虚拟光驱,用来挂载 CentOS iso 镜像安装文件EasyBCD:设置引导启动用EaseUS Partition Master 10.1:用于格式化成ext3Ext2Fsd:在win7下挂载linux文件系统ext2、ext3等WinGrub:只是为了看一下分区编号,其实很鸡肋,没有也可以,需要一个个地实验分配空间打开磁盘管理器:Win徽标键+R键调出运行框,输入指令diskmgmt.msc回车调出磁盘管理器。在磁盘的最后一个主分区上点击右键,选择“删除卷”或“压缩卷”,空间建议至少 100G 。(注意:如果是删除卷,需要备份此分区内的文件信息)然后磁盘上应该会显示有一部分“未分配”状态的空间打开 EaseUS Partition Master 10.1,在磁盘未分配空间上右键->创建分区,创建一个 10GB 的分区作为Linux镜像的安装盘,文件系统需要选择 EXT3挂载EXT3,并拷贝安装脚本及安装文件安装 Ext2Fsd 软件,安装过程中记得勾选以下选项使用 Ext2Fsd 挂载刚刚分配的 10GB 的 EXT3 格式的磁盘分区使用 deamon tools 挂载 CentOS 7 的 iso 文件,打开虚拟光驱,复制根目录的 images 和 isolinux 两个文件夹到 10GB 的 EXT3 磁盘分区中复制 CentOS 7 的 iso 到 10GB 的 EXT3 磁盘分区中(注意:是以.iso为后缀文件,而不是虚拟光驱中的文件)查看分区编号,并添加启动脚本安装 WinGrub,在Tool->Partition List打开的页面中找到 10GB 的 EXT3 磁盘分区的编号,例如:(hd0,5)(注意:由于软件反应速度慢,打开 Partition List 可能需要一段时间响应)安装 EasyBCD,打开后找到 Add New Entry,点 NeoGrub 标签。点 Install 然后点 Configure在弹出的文档中加入下面内容(注意,以下内容中的{0}和{1}为占位符,取决你你自己的系统,不要直接复制):title CentOS 7root {0}kernel {0}/isolinux/vmlinuz linux repo=hd:/dev/{1}:/initrd {0}/isolinux/initrd.img替换{0}为你的 10GB 的 EXT3 磁盘分区编号,如:(hd0,5)替换{1}为你的linux repo地址,如:sda6。这里sda后面的数字是比你的分区编号大 1 的数字(说明在 linux 里磁盘编号是从 1 开始,而 windows 从 0 开始,故两者相差 1)完整的文本内容见下面title CentOS 7root (hd0,5)kernel (hd0,5)/isolinux/vmlinuz linux repo=hd:/dev/sda6:/initrd (hd0,5)/isolinux/initrd.img补充:linux repo=hd:/dev/sda7:/代表你的linux系统位置,如果sda不行,需要替换成sdb试下。具体原理笔者不太清楚,如有懂的希望在评论区中回复下。只有CentOS 7需要。开始安装完成以上步骤即可以重启系统开始安装……网上关于 CentOS 7 的安装文档很多,不在本文研究范围内,贴出链接方便下大家:CentOS 7系统安装配置图解教程参考资料Win7下硬盘安装CentOS7!Windows 7下硬盘安装CentOS 6.5 ...

January 3, 2019 · 1 min · jiezi

centos7 安装wkhtmltopdf 0.12.5

wkhtmltopdf 看网上安装教程都是老版本的,正好从0.12.5开始安装发生了变化,很多百度的都没用了现做此记录:环境:centos7、wkhtmltopdf0.12.5安装方式:rpm下载:最新版本:https://github.com/wkhtmltopd…wkhtmltopdf0.12.5curl -O https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm安装rpm -ivh wkhtmltox-0.12.5-1.centos7.x86_64.rpm直接安装会提示一堆依赖问题,没截图先安装依赖:yum install -y fontconfig libX11 libXext libXrender libjpeg libpng xorg-x11-fonts-75dpi xorg-x11-fonts-Type1依赖安装成功后在使用上面的安装命令安装即可安装后的路径:whereis wkhtmltopdf一般在:/usr/local/bin/wkhtmltopdf/lib64/libcrypto.so.10: version `OPENSSL_1.0.2’ not foundyum -y install openssl中文方块字将windows下的宋体字体复制到/usr/share/fonts/chinese/TrueTypewindows字体目录:C:WindowsFonts最下面宋体 常规 文件名为:simsunb.ttf

December 28, 2018 · 1 min · jiezi

centos nginx下配置免费https

准备记录下部署免费https的过程 ,使用Let’s Encrypt的免费证书下载自动安装脚本wget https://dl.eff.org/certbot-autochmod a+x certbot-auto安装执行脚本./certbot-auto –nginx这里会下载一些东西,让后让你选择你需要加https的域名,这个域名是在nginx.conf中配置的server中读取到的。注意选择的域名只能是备案过的那个域名。因为这个脚本会到DNS服务器去查这个域名对应的ip服务器。对不上也是不会给颁发证书的。执行成功后,会让你选择是否把http的请求重定向到https。直接选择2就行到这里已经配置成功了,访问下网站就可以看效果了。点击那个锁还可以看到关于证书的详细信息总结其实这脚本就是相当于一键安装包,帮你申请https证书,然后下载到服务器存放,然后在把证书配置到nginx.conf里边。打开nginx.conf就能看到新增的配置信息。 listen 443 ssl http2; # managed by Certbot ssl_certificate /etc/letsencrypt/live/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot # Redirect non-https traffic to https if ($scheme != “https”) { return 301 https://$host$request_uri; #该状态代码301告诉浏览器(和搜索引擎)这是永久重定向。这使浏览器记住重定向,以便下次访问时,浏览器将在内部进行重定向 }# managed by Certbot}附由于Let’s Encrypt这个证书90天后就过期了,可以使用cron做一个定时任务,因为我这个证书是18号申请的,所以每个月的19号就执行一次,执行crontab -e后会进入个文件输入0 0 19 * * ./path/to/certbot-auto renewcrontab -e的五个参数分别代表,分钟、小时、天、月、周。参考https://certbot.eff.org/lets-encrypt/centos6-nginxhttps://bjornjohansen.no/redirect-to-https-with-nginxhttp://nginx.org/en/docs/http/ngx_http_core_module.html

December 19, 2018 · 1 min · jiezi

CentOS7 下安装 Mysql 8

添加 MySQL Yum 存储库MySQL Yum存储库提供了一种使用Yum使用最新软件包安装和更新MySQL产品的简单方便的方法。您可以根据我的步骤进行安装,也可以查看官方快速指南查找不同系统环境的安装方式。访问https://dev.mysql.com/downloa…,访问MySQL Yum 存储库的下载页面 。选择并下载适用于您的平台的发行包。使用以下命令安装下载的发行包,替换 platform-and-version-specific-package-name 为下载的包的名称: shell> sudo rpm -Uvh platform-and-version-specific-package-name.rpm使用此命令查看 MySQLYum 存储库中的所有子存储库,并查看哪些子存储库已启用或禁用 yum repolist all | grep mysql安装 MySQL sudo yum install mysql-community-server启动 MySQL 服务器对于基于 EL7 的平台,这是启用首选命令: sudo systemctl start mysqld.service对于基于 EL7 的平台,这是检查 MySQL 服务器状态的首选命令:sudo systemctl status mysqld.service在服务器初始启动时,如果服务器的数据目录为空,则会发生以下情况:服务器已初始化。在数据目录中生成 SSL 证书和密钥文件。该 validate_password 插件安装并启用。将’root’@’localhost’创建一个超级用户帐户。设置超级用户的密码并将其存储在错误日志文件中。要显示它,请使用以下命令: sudo grep ’temporary password’ /var/log/mysqld.log通过使用生成的临时密码登录: mysql -uroot -p为超级用户帐户设置自定义密码,尽快更改 root 密码: ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘MyNewPass4!’;开启 MySQL 远程连接选择 mysql 数据库: use mysql;在 mysql 数据库的 user 表中查看当前 root 用户的相关信息: select host, user, authentication_string, plugin from user;授权 root 用户的所有权限并设置远程访问: GRANT ALL ON . TO ‘root’@’%’;刷新权限: flush privileges;更新 root 用户密码及加密规则(如果客户端不支持加密插件): ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘password’;刷新权限: flush privileges; ...

December 6, 2018 · 1 min · jiezi

yum 安装 2.x 版本的git

官方教程,在 Linux/Unix 系统中,通过工具在中安装 git,这种方式比较简单,便于升级卸载工具,网上搜到的全是源码编译安装。下面介绍在 CentOS 系统中,通过 yum 来安装 gitRed Hat Enterprise Linux, Oracle Linux, CentOS, Scientific Linux, et al.RHEL and derivatives typically ship older versions of git. You can download a tarball and build from source, or use a 3rd-party repository such as the IUS Community Project to obtain a more recent version of git.官方文档说 git 在 RHEL 和衍生产品通常都会发布旧版本的 git,我们需要源码编译安装,或者使用第三方存储库(如IUS社区项目)。现在我们通过,IUS社区下载 ius-release.rpm 文件进行安装# 注意下载不同的版本,本机 CentOS 7wget https://centos7.iuscommunity.org/ius-release.rpm# 安装rpm文件rpm -ivh ius-release.rpm查看可安装的git安装包repoquery –whatprovides git# git-0:1.8.3.1-13.el7.x86_64# git2u-0:2.16.5-1.ius.centos7.x86_64# git2u-0:2.16.2-1.ius.centos7.x86_64# git2u-0:2.16.4-1.ius.centos7.x86_64# git-0:1.8.3.1-14.el7_5.x86_64卸载我本机的 1.8.3 的 git,安装 2.16.5 的 git# 卸载老的版本yum remove git# 安装新的版本yum install git2u原文收录在这里 ...

October 29, 2018 · 1 min · jiezi

教程:如何在vultur centos 7中部署Google BBR

BBR(Bottleneck Bandwidth and RTT)是一种新的拥塞控制算法,由谷歌贡献给Linux内核TCP栈。使用BBR后,Linux服务器可以显着提高吞吐量并减少连接延迟。此外,部署BBR很容易,因为此算法仅需要发送方的更新,不需要网络或接收方。在本文中,我将向您展示如何在Vultr CentOS 7 KVM服务器实例上部署BBR。 ...

March 30, 2018 · 1 min · jiezi