3.服务器软件安装

22 阅读3分钟

申请一台阿里云服务器ECS, 2核4G,cenos7系统

docker 安装

yum -y install docker 安装docker

systemctl enable docker 设置docker开机启动

systemctl start docker 启动docker

docker -v 查看docker版本

设置docker加速仓库配置 docker镜像仓库默认在国外的服务器上,导致拉取镜像的速度很慢,需要配置加速地址来加快镜像的拉取速度。

切换到docker的安装目录

cd /etc/docker/

image.png 修改daemon.json文件中的内容:

{ "registry-mirrors":["32xw0apq.mirror.aliyuncs.com"] }

修改配置之后需要重启docker

systemctl restart docker

mysql安装

docker run --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

现在本地找mysql,如果找不到会从网上自动下载。 阿里云服务器需要配置网络安全组中对外开放的端口3307,mysql才能被外部访问。

image.png

redis安装

docker run --name redis -p 6380:6379 -d redis

默认拉取安装最新的redis镜像并启动redis容器(最新的拉取redis的目录里没有找到redis-cli,自己上传了一个redis镜像)

docker exec -it 6456ad59f9f9 bash

进入redis容器进入/usr/local/bin目录下找到redis-cli

root@6dc2af01a47d:/usr/local# cd bin

root@6dc2af01a47d:/usr/local/bin# ls

docker-entrypoint.sh redis-benchmark redis-check-rdb redis-sentinel gosu redis-check-aof redis-cli redis-server

root@6dc2af01a47d:/usr/local/bin# redis-cli

127.0.0.1:6379>

127.0.0.1:6379> CONFIG GET requirepass

  1. "requirepass"
  2. ""

127.0.0.1:6379> CONFIG set requirepass 123456

OK

阿里云服务器需要配置网络安全组中对外开放的端口6380,redis才能被外部访问。

RocketMQ安装

rocketmq-namesrv

docker run --name namesrv -p 9876:9876 -e "MAX_POSSIBLE_HEAP=10000000" -d rocketmqinc/rocketmq sh mqnamesrv

查看namesrv的ip地址

image.png

修改borker注册到namesrv上的ip地址为阿里云服务器的公网ip地址

image.png

rocketmq-broker 消息存储地方

docker run --name broker -p 10911:10911 -p 10909:10909 -v /xiankejin/rocketmq/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf --link namesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" -d rocketmqinc/rocketmq:4.4.0 sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf

image.png

rocketmq-console-ng 管理控制台,可视化

docker run --name=rocketmq-console -e "JAVA_OPTS=-Drocketmq.namesrv.addr=47.108.215.194:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8080:8080 -d styletang/rocketmq-console-ng

image.png

image.png

http://47.108.215.194:8080/#/cluster image.png

需要放行的端口:9876/10911/8080

rocketmq运行流程

  1. broker会注册到namesrv上,应用程序首先会连接到namesrv获取到borker列表brokerServerList。
  2. 负载均衡broker列表。
  3. 应用程序与borker进行TCP连接。

mongodb安装 下载并启动mongo容器

docker run --name mongo -p 27017:27017 -d mongo --auth

进入mongo容器,然后执行mongo脚本,进入admin数据库

docker exec -it mongo mongo admin

image.png

给mongo设置密码:

db.createUser({user:'admin',pwd:'123456', roles:[{role:'userAdminAnyDatabase', db:'admin'}]});

image.png

阿里云服务器放开27017端口

在容器里面执行命令,安装vim

apt-get update && apt-get install -y vim

nacos-server安装

docker run --name nacos -e MODE=standalone -p 8848:8848 -d nacos/nacos-server:1.1.4

阿里云服务器上放行8848端口 访问地址:http://47.109.203.8:8848/nacos

nacos/nacos

sentinel-dashboard

docker run --name sentinel -p 8858:8858 -d bladex/sentinel-dashboard

阿里云服务器放行8858端口

http://47.109.203.8:8858/#/login

sentinel/sentinel

image.png

seata-server安装

docker run --name seata-server -p 8091:8091 -e SEATA_IP=47.109.203.8 -d seataio/seata-server

阿里云服务器开发8091端口

telnet命令

服务器中如何判断一个端口是否被监听的命令telnet

yum install -y telnet

image.png