Linux下搭建rabbitMQ、安装jdk、安装redis、安装zookeeper、docker安装MySQL、防火墙常用命令、docker安装、Windows下嘛呢私服搭建、Nginx安装

rabbitMQ

1. 搭建Elang环境

1)安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了

 

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

 

2)安装

yum install ncurses-devel

 

 

3)安装erlang环境

wget http://erlang.org/download/otp_src_18.2.1.tar.gz

   tar xvfz otp_src_18.2.1.tar.gz

  

   cd  otp_src_18.2.1

   ./configure --prefix=/usr/erlang --without-javac

   make

make install

4)验证安装是否成功

cd /usr/local/erlang/

./erl

 

5)设置环境变量

vim /etc/profile

export PATH=$PATH:/usr/erlang/bin

2.安装RabbitMQ

1)下载rabbitmq-server-3.6.9.tar.xz

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-generic-unix-3.6.9.tar.xz

 

2)对于下载xz包进行解压,首先先下载xz压缩工具:

yum install xz

 

3)对rabbitmq包进行解压:

xz -d xz -d rabbitmq-server-generic-unix-3.6.9.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.9.tar

随后移动至/usr/local/下 改名rabbitmq:cp -r rabbitmq_server-3.6.9 /usr/local/rabbitmq
这种方式无需make

4)配置文件

vi /etc/profile
export PATH=$PATH:/usr/local/rabbitmq/sbin

“source /etc/profile”使修改文件生效

6)启用MQ管理方式:

cd /usr/local/rabbitmq/sbin
./rabbitmq-plugins enable rabbitmq_management  #启动后台管理
rabbitmq-server -detached   #后台运行rabbitmq

 

同时将rabbitmq-server加入到开机自启动服务中,运行以下命令:

[root@rabbitmqserver bin]# chkconfig rabbitmq-server on

7) 开放端口

 

端口开放要放在22的下方

vi /etc/sysconfig/iptables

添加:(15672:网页版访问使用, 5672:程序)

-A INPUT -m state --state NEW -m tcp -p tcp --dport 15672 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5672 -j ACCEPT

 

8)创建 配置文件

 

mkdir /etc/rabbitmq

cp /usr/local/rabbitmq/rabbitmq.config.example rabbitmq.config

如果没有该文件可以去下面地址拷贝

[https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example ]

官方文档 [https://www.rabbitmq.com/configure.html ]

 

9)添加用户,设置用户权限

eg:

在sbin目录下

添加用户 ./rabbitmqctl add_user dujj dujj

添加权限 ./rabbitmqctl set_permissions -p “/” dujj “." ".” “.*”

修改用户角色 ./rabbitmqctl set_user_tags dujj administrator

 

访问地址:http://47.102.124.21:15672/#/queues

 

 

注意:

 

rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。

 

默认情况下,RabbitMQ的默认的guest用户只允许本机访问, 如果想让guest用户能够远程访问的话,只需要将配置文件中的loopback_users列表置为空即可,如下:{loopback_users, []}

另外关于新添加的用户,直接就可以从远程访问的,如果想让新添加的用户只能本地访问,可以将用户名添加到上面的列表, 如只允许xzb用户本机访问。{loopback_users, [“xzb”]}

更新配置后,重启服务

 

相应的命令

 

(1) 新增一个用户

 

rabbitmqctl add_user Username Password

 

(2) 删除一个用户

 

rabbitmqctl delete_user Username

 

(3) 修改用户的密码

 

rabbitmqctl change_password Username Newpassword

 

(4) 查看当前用户列表

 

rabbitmqctl list_users

 

    用户角色

 

按照个人理解,用户角色可分为五类,超级管理员, 监控者, 策略制定者, 普通管理者以及其他。

 

(1) 超级管理员(administrator)

 

可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。

 

(2) 监控者(monitoring)

 

可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

 

(3) 策略制定者(policymaker)

 

可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。

 

与administrator的对比,administrator能看到这些内容

 

(4) 普通管理者(management)

 

仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。

 

(5) 其他

 

无法登陆管理控制台,通常就是普通的生产者和消费者。

 

了解了这些后,就可以根据需要给不同的用户设置不同的角色,以便按需管理。

 

设置用户角色的命令为:

 

rabbitmqctl set_user_tags User Tag

 

User为用户名, Tag为角色名(对应于上面的administrator,monitoring,policymaker,management,或其他自定义名称)。

 

也可以给同一用户设置多个角色,例如

 

rabbitmqctl set_user_tags hncscwc monitoring policymaker

 

    用户权限

 

用户权限指的是用户对exchange,queue的操作权限,包括配置权限,读写权限。配置权限会影响到exchange,queue的声明和删除。读写权限影响到从queue里取消息,向exchange发送消息以及queue和exchange的绑定(bind)操作。

 

例如: 将queue绑定到某exchange上,需要具有queue的可写权限,以及exchange的可读权限;向exchange发送消息需要具有exchange的可写权限;从queue里取数据需要具有queue的可读权限。详细请参考官方文档中"How permissions work"部分。

 

相关命令为:

 

(1) 设置用户权限

 

rabbitmqctl set_permissions -p VHostPath User ConfP WriteP ReadP

 

(2) 查看(指定hostpath)所有用户的权限信息

 

rabbitmqctl list_permissions [-p VHostPath]

 

(3) 查看指定用户的权限信息

 

rabbitmqctl list_user_permissions User

 

(4) 清除用户的权限信息

 

rabbitmqctl clear_permissions [-p VHostPath] User

 

 

Ps:找不到/etc/sysconfig/iptables文件

拟机新装了一个CentOs7,然后做防火墙配置的时候找不到iptables文件,解决方法如下:

因为默认使用的是firewall作为防火墙,把他停掉装个iptable

systemctl stop firewalld 
systemctl mask firewalld

yum install -y iptables 
yum install iptables-services

然后就有iptables文件,就可以作配置

开启服务 
systemctl start iptables.service

systemctl restart iptables.service // 重启防火墙使配置生效 
systemctl enable iptables.service // 设置防火墙开机启动

其他命令: 
检查是否安装了iptables 
service iptables status 
安装iptables 
yum install -y iptables 
升级iptables 
yum update iptables 
安装iptables-services 
yum install iptables-services

systemctl disable iptables #禁止iptables服务 
systemctl stop iptables #暂停服务 
systemctl enable iptables #解除禁止iptables 
systemctl start iptables #开启服务

安装JDK

http://www.cnblogs.com/zs-notes/p/8535275.html

 

Linux安装jdk1.8和配置环境变量

   linux 下安装jdk和windows下的安装是一样的,之前在windows安装的时候是先下载压缩包,然后再配置环境变量。其实在linux下也是一样的。

   第一步:创建jdk安装目录 

Ps :(该/usr/local/src 目录是空的,最好把我们自己下载的放到这,容易区分)

              命令:mkdir -p /usr/local/src/jdk

   第二步:查看安装程序

            命令:rpm -qa | grep -i jdk

            Ps : 若之前安装过jdk,下次安装一定把之前的删除干净

   第三步:命令下载jdk包 (需要联网,下载也需要点时间)

        本章使用的为后缀为tar.gz的文件(不需要安装),如jdk-8u131-linux-x64.tar.gz

     命令:wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz

         注意:如果上面wget命令不能用,报错:-bash: wget: command not found。执行一下该命令(安装依赖包) yum -y install wget

         注意 : 记住需要加上:--no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"    这段是为了避开用户验证用的

   第四步:解压

       tar -zxvf jdk-8u131-linux-x64.tar.gz

        系统会生成一个名为:jdk1.8.0_131 的文件夹。可以使用mv命令自定义文件名。

       mv jdk1.8.0_131  jdk1.8

   第五步:配置环境变量

         vi /etc/profile

        可以看到这个文件的内容,profile文件有点类似于windows系统里面的环境变量的配置,

        shift + g 定位到最后一行

        这个时候按一下a或i键,进入编辑模式

https://images2018.cnblogs.com/blog/1328409/201803/1328409-20180309175813890-476918162.png

        中间用红色的线圈起来的就是需要加的( JAVA_HOME  是jdk安装目录,和在Windows下配置一样 )

export JAVA_HOME=/usr/local/src/jdk/jdk1.8

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

   第六步:退出文件,保存

         按Esc键   输入:wq   保存并退出

   第七步:让配置文件生效

source /etc/profile

   第八步:查看是否配置成功

          java -version     

    若出现jdk版本号,则安装并配置环境变量成功

         如果提示命令找不到的话,查看一下jdk的配置路径是否错误。

https://images2018.cnblogs.com/blog/1328409/201803/1328409-20180309180852815-936433149.png

 

 

 

安装redis

1.获取redis资源

  wget http://download.redis.io/releases/redis-4.0.8.tar.gz

2.解压

  tar xzvf redis-4.0.8.tar.gz

3.安装

  cd redis-4.0.8

  make

  cd src

  make install PREFIX=/usr/local/redis

4.移动配置文件到安装目录下

  cd ../

  mkdir /usr/local/redis/etc

  mv redis.conf /usr/local/redis/etc

5.配置redis为后台启动

  vi /usr/local/redis/etc/redis.conf //将daemonize no 改成daemonize yes

6.将redis加入到开机启动

  vi /etc/rc.local //在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf (意思就是开机调用这段开启redis的命令)

7.开启redis

/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf 

8.启动redis客户端

    设置环境变量:

vim /etc/profile
export PATH=$PATH:/usr/local/redis/bin

“source /etc/profile”使修改文件生效

启动客户端:

redis-cli

 

set foo bar

get foo

 

 

常用命令  

  redis-server /usr/local/redis/etc/redis.conf //启动redis

  pkill redis  //停止redis

  卸载redis:

    rm -rf /usr/local/redis //删除安装目录

    rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本

    rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹

 

安装zookeeper

1.下载Linux版的zookeeper

注意:这个版本一定要和项目中的版本一致

2.上传到服务器中解压:

tar -zxvf  zookeeper-3.3.6  

3.进入 zookeeper-3.4.8下的conf目录中修改核心配置文件:

   默认进去zoo_sample.cfg是这个,需要复制一份重命名为zoo.cfg,因为 Zookeeper 在启动时会找这个文件作为默认配置文件。

   命令:cp zoo_sample.cfg   zoo.cfg

https://img-blog.csdn.net/20171024112729635?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlmdXBpbmdjbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

4,跳到bin目录下执行启动脚本 zkServer.sh :

启动是start,重启是restartstatus是看状态、启动客户端是sh zkCli.sh -server 127.0.0.1:2181

https://img-blog.csdn.net/20171024115213134?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlmdXBpbmdjbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

5、Java中使用

1、添加依赖:



    org.apache.zookeeper

    zookeeper

    3.4.6

    

        

            log4j

            log4j

        

        

            org.slf4j

            slf4j-api

        

        

            org.slf4j

            slf4j-log4j12

        

    

 

docker安装MySQL

1、查看镜像

docker search mysql

2、下载镜像

docker pull mysql:5.7

3、运行镜像

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

 

-d 标识是让 docker 容器在后台运行。

 

-p 标识通知 Docker 将容器内部使用的网络端口映射到我们使用的主机上。

 

–name 定义一个容器的名字,如果在执行docker run时没有指定Name,那么deamon会自动生成一个随机数字符串当做UUID。

 

-e 设置环境变量,或者覆盖已存在的环境变量

3306:3306 将容器的3306端口映射到本机的3306端口

 

4、查看运行容器

docker ps

5、进入容器

docker exec -it 775c7c9ee1e1 /bin/bash

6、进入MySQL客户端

mysql -u root -p

  输入密码:geex

 

7、查看防火墙打通端口

firewall-cmd --zone=public --list-port

8、打通3306端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

9、重启防火墙

firewall-cmd --reload

 

 

centos 7 firewall(防火墙)开放端口/删除端口/查看端口

1.firewall的基本启动/停止/重启命令

 
#centos7启动防火墙
systemctl start firewalld.service
#centos7停止防火墙/关闭防火墙
systemctl stop firewalld.service
#centos7重启防火墙
systemctl restart firewalld.service 
#设置开机启用防火墙
systemctl enable firewalld.service
#设置开机不启动防火墙
systemctl disable firewalld.service

2.新增开放一个端口号

  firewall-cmd --zone=public --add-port=80/tcp --permanent

 #说明:

  #–zone #作用域

  #–add-port=80/tcp #添加端口,格式为:端口/通讯协议

  #–permanent 永久生效,没有此参数重启后失效

 

 #多个端口:

  firewall-cmd --zone=public --add-port=80-90/tcp –permanent

 

防火墙重新加载:firewall-cmd --reload

 

3.查看本机已经启用的监听端口:

  #centos7以下使用netstat -ant,7使用ss
 ss -ant

4.查看已打通端口

  #centos7查看防火墙所有信息
    firewall-cmd --list-all
  #centos7查看防火墙开放的端口信息
    firewall-cmd --list-ports

4.删除

#删除

firewall-cmd --zone=public --remove-port=80/tcp --permanent

docker安装

  1. check linux system version:
cat /etc/centos-release
 

2. Install yum-utils, which provides the yum-config-manager utility:

yum install -y yum-utils

3.Use the following command to set up the stable repository:

     yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
 

4.Optional: Enable the edge repository.

yum-config-manager --enable docker-ce-edge

5. Update the yum package index.  

yum makecache fast

6、Install the latest version of Docker 

yum install docker-ce

7. Start Docker.

启动   systemctl start docker.service
守护进程重启   sudo systemctl daemon-reload
重启服务   systemctl restart  docker
service docker restart
关闭   service docker stop   

8、验证docket安装

docker -v
docker version 

 

9、docker使用

启动:

 sudo service docker start

 

 1. 创建一个容器: # docker run ...

 

   查看帮助: # docker run --help  

 

 2. 启动一个容器: # docker start "容器名称或ID"  

 

 3. 关闭容器: # docker stop "容器名称或ID" 

 

 4. 查看正在运行的容器: # docker ps

 

 5. 查看所有已创建的容器: # docker ps -a

 

   -l: 查看容器的更详细信息.

 

 6. 删除容器: # docker rm "容器名称或ID"

     docker rm -f nexus 删除Restarting状态容器 

 

 

 7. 到容器上执行一个命令后退出立即删除该容器:docker run --rm "镜像名称或ID" "要执行的命令"

 

 8. 杀死正在运行的容器: # docker kill "容器名称或ID" 

 

 9. 进入容器的三种方法: 

 

    # docker attach

 

    # docker exec  

        docker exec -it 775c7c9ee1e1 /bin/bash  

    # nsenter

        通过pid进入: sudo nsenter --target 25727 --mount --uts --ipc --net --pid

10.查看容器信息

   docker inspect 44fc0f0582d9 

     docker inspect -f {{.State.Pid}} 44fc0f0582d9  

11、创建容器:

        创建一个容器并指定随机端口: 

        docker run -d -P daocloud.io/nginx
创建一个容器并指定端口: 
docker run -d -p 81:80 daocloud.io/nginx
 
dockers目录:
/var/lib/docker
 
ctrl+P+Q退出容器
 

nginx安装

docker run -d -p 81:80 daocloud.io/nginx

 

docker maven私服安装:

 

 

Windows下搭建maven私服:

  1. 下载地址:https://www.sonatype.com/download-oss-sonatype

下载windows 版:nexus-3.15.2-01-win64.zip

 

  1. 解压
  2. 打开cmd或者powershell,进入nexus-3.0.1-01\bin下。

执行:nexus.exe /run

  1. 访问路径:localhost:8081

启动成功后,默认用户名admin 密码:admin123

  1. Maven setting 文件配置:

 

 

  1. Pom.xml中  distributionManagement配置:
   

        maven-releases

        Releases

        http://localhost:8088/repository/maven-releases/

        true

    

    

        maven-snapshots

        Snapshot

        http://localhost:8088/repository/maven-snapshots/

        true

    

 

注意:

distributionManagement中id要和setting文件中server中id配置一直

 

  1. 图中标识4的位置由Disable redeploy修改为:Allow redeploy

 

 

  1. dependencyManagement中 dependencies 和dependencies中依赖区别:

 

dependencies即使在子项目中不写该依赖项,那么子项目仍然会从父项目中继承该依赖项(全部继承)

 

dependencyManagement里只是声明依赖,并不实现引入,因此子项目需要显示的声明需要用的依赖。如果不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取自父pom;另外如果子项目中指定了版本号,那么会使用子项目中指定的jar版本。

 

profiles中profiles dependencies自己理解:应是基于不同开发环境,获取不同版本的jar的配置

你可能感兴趣的:(Linux)