一、设置静态IP地址
1、ip addr 查看网卡名称
2、vi /etc/sysconfig/network-scripts/ifcfg-ens192 (网卡名称)
修改配置如下:
BOOTPROTO="static" # 使用静态IP地址,默认为dhcp IPADDR="192.168.4.202" # 设置的静态IP地址
NETMASK="255.255.255.0" #s子网掩码
GATEWAY="192.168.4.254" # 网关地址
DNS1="202.102.224.68" # DNS服务器
211.138.24.66
211.138.30.66
ONBOOT=yes #设置网卡启动方式为 开机启动 并且可以通过系统服务管理器 systemctl 控制网卡
3、修改 vi /etc/sysconfig/network NETWORKING=yes
GATEWAY=192.168.1.62# 网关地址
4、重启网络服务
service network restart
- 安装JDK1.8
1、下载JDK1.8
复制到浏览器下载,随便找的包,版本:(1.8.0-202)
yum -y install wget
wget https://repo.huaweicloud.com/java/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz
2、将包上传至服务器
3、进入jak目录解压
tar -zxvf jdk-8u202-linux-x64.tar.gz
解压后会生成一个jdk1.8.0_202的文件夹
4、将解压后的文件复制到到/usr/local/java目录下
mv jdk1.8.0_202/ /usr/local/java
5、编辑profile
vi /etc/profile
末尾加上:
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:${JAVA_HOME}/jre/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin
按Esc件后输入:wq!保存退出
7、检查Linux自带JDK版本
java -version
8、删除自带的JDK
rpm -qa |grep jdk
rpm -e jdk包名
9、让环境变量生效
source /etc/profile
10、验证是否安装完成
java -version
正常会显示:
java version "1.8.0_202"
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
配置免密登录
使用rsa加密,如下命令,连续回车3次即可,密钥对生成的路径为:cd ~/.ssh/
ssh-keygen -t rsa
将公钥拷贝到其他4台机器上,命令如下,需要输入yes和对应机器的密码:
for i in node1 node2 node3 node4 node5;do ssh-copy-id -i .ssh/id_rsa.pub $i;done
三、安装docker
1、确保 yum 包更新到最新
yum update
2、安装需要的软件包 yum-util 提供yum -config-manager功能,另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
3、添加源,国内还是用阿里的源快一些,
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4、更新yum缓存
yum makecache fast
5、开始安装Docker
yum -y install docker-ce
6、启动docker
systemctl start docker
7、设置开机启动
systemctl enable docker
8、验证
docker ps
四、使用docker安装Mysql5.7
1、拉取镜像
docker pull mysql:5.7
- 创建数据目录
mkdir /usr/local/dockerdata/
mkdir /usr/local/dockerdata/mysql
mkdir /usr/local/dockerdata/mysql/conf
mkdir /usr/local/dockerdata/mysql/logs
mkdir /usr/local/dockerdata/mysql/mysql
3、创建配置文件
cd /usr/local/dockerdata/mysql/conf
vi my.cnf
4、粘贴到my.cnf内
[mysqld]
user=mysql
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
#skip-grant-tables
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
5、运行镜像
docker run -d -p 3306:3306 --restart always --privileged=true -v /usr/local/dockerdata/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /usr/local/dockerdata/mysql/logs:/logs -v /usr/local/dockerdata/mysql/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=yjsz2022! --name mysql mysql:5.7
- run 运行一个容器
- -d 表示后台运行
- -p 表示容器内部端口和服务器端口映射关联
- --privileged=true 设值MySQL 的root用户权限, 否则外部不能使用root用户登陆
- --restart always 表示容器因为意外挂掉时自动重启
- -v 将服务器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置
- --v /usr/local/dockerdata/mysql/mysql:/var/lib/mysql 同上,避免以后docker删除重新运行MySQL容器时数据丢失
- -e MYSQL_ROOT_PASSWORD=123456 设置MySQL数据库root用户的密码
- --name mysql 设值容器名称为mysql
- mysql:5.7 表示从docker镜像mysql:5.7中启动一个容器
- --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 设值数据库默认编码
6 进入镜像
docker exec -it mysql bash
- 进入mysql
mysql -uroot -p
8、创建用户验证容器是否正常
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yjsz2022!' WITH GRANT OPTION;
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' IDENTIFIED BY 'yjsz2022!';
9、设置远程可以登录
flush privileges;
五、使用docker安装redis
1、下载redis镜像
docker pull redis
2、准备redis的配置文件
redis中文官方网站:http://www.redis.cn/download.html
下载后解压出来:找到redis.conf文件
3、修改redis.conf配置文件:
主要配置的如下:
bind 127.0.0.1 #注释掉这部分,使redis可以外部访问
daemonize no#用守护线程的方式启动
requirepass 你的密码#给redis设置密码
appendonly yes#redis持久化 默认是no
tcp-keepalive 300 #防止出现远程主机强迫关闭了一个现有的连接的错误 默认是300
4、创建本地与docker映射的目录,即本地存放的位置
mkdir /home/docker/redis
mkdir /home/docker/redis/data
5、把配置文件复制到刚才创建的/home/docker/redis里
6、启动docker redis
docker run -p 6379:6379 --name redis -v /home/docker/redis/redis.conf:/etc/redis/redis.conf -v /home/docker/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
- -p 6379:6379 把容器内的6379端口映射到宿主机6379端口
- -v /usr/local/dockerdata/redis.conf:/etc/redis/redis.conf 文件映射
- -v /usr/local/dockerdata/redis/data:/data 把redis持久化的数据映射到到宿主机内显示
- redis-server /etc/redis/redis.conf 按照这个redis.conf的配置启动
- –appendonly yes redis启动后数据持久化
7、查看是否启动成功
docker ps
docker logs redis
六、使用docker安装nginx
1、下载镜像
docker pull nginx
2、创建文件夹
cd /home/docker/ && mkdir nginx
cd nginx && mkdir html conf logs
3、先启动一个nginx容器
docker run -d --name nginx nginx
4、将容器内的默认路径下的配置文件复制到自己创建的conf下
docker cp 19dc8eb5a02e:/etc/nginx/nginx.conf /usr/local/dockerdata//nginx/conf
5、停止容器
docker stop 7322
6、删除容器
docker rm 7322
7、正式生成容器
docker run -d -p 80:80 -p 8040:8040 --name nginx -v /home/docker/nginx/html:/usr/share/nginx/html -v /home/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/docker/nginx/logs:/var/log/nginx nginx
- 在创建的html文件夹下写一个index.html
- 在浏览器访问宿主机IP地址+映射的端口访问验证是否生效
- 使用docker安装nacos
1、拉取镜像
docker pull nacos/nacos-server
2、创建数据库信息(Mysql)
create database nacos_config
3、创建表:https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sql
4、创建Nacos容器
注意:在使用下方命令时把注释删掉,且 “\” 后面不能有空格
docker run -d \
-e MODE=standalone \ # 使用 standalone模式(单机模式)
-e SPRING_DATASOURCE_PLATFORM=mysql \ # 选择mysql数据库
-e MYSQL_SERVICE_HOST=192.168.1.55 \ # 数据库地址
-e MYSQL_SERVICE_USER=root \ # 数据库用户名
-e MYSQL_SERVICE_PASSWORD=admin \ # 数据库密码
-e MYSQL_SERVICE_DB_NAME=nacos_config \ # 数据库名称
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e JVM_XMN=256m \
-p 8848:8848 \
--name nacos \
--restart=always \ # 若重新启动Docker,该容器也会重新启动
nacos/nacos-server
docker run -d \-e MODE=standalone \-e SPRING_DATASOURCE_PLATFORM=mysql \-e MYSQL_SERVICE_HOST=192.168.4.202 \-e MYSQL_SERVICE_USER=root \-e MYSQL_SERVICE_PASSWORD=yjsz2022! \-e MYSQL_SERVICE_DB_NAME=nacos_config \-e JVM_XMS=256m \-e JVM_XMX=256m \-e JVM_XMN=256m \-p 8848:8848 \--name nacos \--restart=always \nacos/nacos-server
5、验证输入IP地址+映射的端口及/nacos/index.html 例如:http://192.168.1.55:8848/nacos/index.html
- 安装RocketMQ
1、下载rocketMQzip包并解压
前往 https ://archive.apache.org/dist/rocketmq/4.5.1/rocketmq-all-4.5.1-bin-release.zip下载 Binary 文件并将文件上传至/usr/local
解压压缩包
cd /usr/local
unzip rocketmq-all-4.5.1-bin-release.zip
如果提示未找到命令需执行
yum install zip #提示输入时,请输入y;
yum install unzip #提示输入时,请输入y;
切换目录到RocketMQ根目录
cd /usr/local/rocketmq-all-4.5.1-bin-release
2、启动Name Server
nohup sh bin/mqnamesrv &
验证是否启动OK:
tail -f ~/logs/rocketmqlogs/namesrv.log
# 如果成功启动,能看到类似如下的日志:
2019-07-18 17:03:56 INFO main - The Name Server boot success. ...
3、启动 Broker
- nohup sh bin/mqbroker -n 192.168.4.202:9876 -c conf/broker.conf & -
验证是否启动OK:
tail -f ~/logs/rocketmqlogs/broker.log
# 如果启动成功,能看到类似如下的日志:
2019-07-18 17:08:41 INFO main - The broker[itmuchcomdeMacBook-Pro.local, 192.168.43.197:10911] boot success. serializeType=JSON and name server is localhost:9876
4、验证RocketMQ功能正常(可选)
验证生产消息正常
执行如下命令:
export NAMESRV_ADDR=192.168.4.202:9876
- sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer -
能看到类似如下输出:
SendResult [sendStatus=SEND_OK, msgId=C0A82BC5F36C511D50C05B41...
5、验证消费消息正常
执行如下命令:
- sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer -
能看到类似如下输出:
ConsumeMessageThread_4 Receive New Messages: [MessageExt [queueId=3, stor....
6、停止
依次执行以下两条命令即可
sh bin/mqshutdown broker
输出如下信息说明停止成功
The mqbroker(36695) is running...
Send shutdown request to mqbroker(36695) OK
sh bin/mqshutdown namesrv
# 输出如下信息说明停止成功
The mqnamesrv(36664) is running...
Send shutdown request to mqnamesrv(36664) OK
7、启动:
cd /usr/local/rocketmq-all-4.5.1-bin-release
nohup sh bin/mqnamesrv &
nohup sh bin/mqbroker -n 192.168.4.202:9876 -c conf/broker.conf &