快速安装服务器环境
...大约 2 分钟环境准备环境准备安装使用dockerdocker-compose
提示
此教程是指导快速安装 SpringCloud 开发所需的环境服务软件。前提是本地开发软件:JDK、Maven、IntelliJ IDEA、VSCode、Node.js 已安装完成,如果没有安装开发软件,请查看[环境准备]相关文档。
开发环境搭建需要的软件可以在环境准备中单独安装,也可使用 docker 安装,这里提供 docker 编排文件,可以使用 docker-compose 快速安装 mysql+redis+nacos+seata+sentinel-dashboard 。
1. 开发环境 docker-compose-dev.yaml
version: "3"
services:
mysql:
image: mysql/mysql-server:5.7
container_name: gitegg-mysql
restart: always
ports:
- 3307:3306
volumes:
# 数据目录,提前建好
- "/data/gitegg/mysql/data/:/var/lib/mysql"
- "/data/gitegg/mysql/conf/:/etc/mysql/"
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: nacos
MYSQL_USER: root
MYSQL_PASSWORD: root
command: --default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
--max_allowed_packet=128M;
redis:
image: redis:6.0.12
container_name: gitegg-redis
command: redis-server --appendonly yes --requirepass "123456"
ports:
- 6380:6379
restart: always
volumes:
# 数据目录,提前建好
- "/data/gitegg/redis/:/data"
nacos:
image: nacos/nacos-server:latest
container_name: gitegg-nacos
restart: on-failure
ports:
- "8848:8848"
- "9848:9848"
- "9555:9555"
environment:
PREFER_HOST_MODE: hostname
SPRING_DATASOURCE_PLATFORM: mysql
MODE: standalone
NACOS_SERVER_PORT: 8848
MYSQL_SERVICE_HOST: gitegg-mysql
MYSQL_SERVICE_DB_NAME: nacos
MYSQL_SERVICE_PORT: 3306
MYSQL_SERVICE_USER: root
MYSQL_SERVICE_PASSWORD: root
JVM_XMS: 512m
JVM_MMS: 320m
volumes:
- "/data/gitegg/nacos/logs/:/home/nacos/logs/"
- "/data/gitegg/nacos/init.d/:/home/nacos/init.d/"
depends_on:
- mysql
seata:
image: seataio/seata-server
container_name: gitegg-seata
environment:
- "SEATA_CONFIG_NAME=file:/root/seata-config/registry"
ports:
- 8091:8091
volumes:
- "/data/gitegg/seata/:/root/seata-config/"
restart: on-failure
depends_on:
- nacos
- mysql
sentinel-dashboard:
image: gitegg/sentinel-dashboard
container_name: sentinel-dashboard
restart: always
environment:
JAVA_OPTS: "-Dserver.port=8086 -Dcsp.sentinel.dashboard.server=localhost:8086 -Dproject.name=sentinel-dashboard"
ports:
- "8086:8086"
2. 创建挂在目录并赋权限
mkdir -p /data/gitegg/mysql/data /data/gitegg/mysql/conf /data/gitegg/redis /data/gitegg/nacos/conf /data/gitegg/nacos/logs/ /data/gitegg/nacos/init.d/ /data/gitegg/seata
chmod -R 777 /data/gitegg/mysql/data /data/gitegg/mysql/conf /data/gitegg/redis /data/gitegg/nacos/conf /data/gitegg/nacos/logs/ /data/gitegg/nacos/init.d/ /data/gitegg/seata
3. 执行安装命令
docker-compose -f docker-compose-dev.yaml up -d
https://nacos.io/zh-cn/docs/quick-start.html。
4. Nacos 安装没有使用自带的 mysql,所以这里需要在安装的 MySql 刷入 nacos 需要的脚本。在官方下载对应的 Nacos 版本,解压后找到/nacos/conf 目录下的 nacos-mysql.sql 数据库脚本,官网地址:登录 docker 容器的 mysql
docker ps
docker exec -ti 662965f52872 /bin/bash
设置 mysql 可以远程连接及 root 用户权限
mysql -u root -proot
alter user 'root'@'%' identified with mysql_native_password by 'root';
grant all privileges on *.* to 'root'@'%' identified by 'root';
flush privileges;
5. 重启 nacos
#查看nacos的container id
docker ps
#重启nacos,CONTAINER_ID替换为nacos对应的container id
docker restart CONTAINER_ID