1987WEB视界-分享互联网热门产品和行业

您现在的位置是:首页 > WEB开发 > 正文

WEB开发

Mac M1 安装 Nacos 操作及问题解决

1987web2024-03-25WEB开发149
nacos依赖mysql

nacos 依赖mysql

先安装mysql ,这里使用的是8+版本,原因在于原本的 5.7 版本中并没有对 m1 的良好支持,如果启动会有报错说查询不到对应版本信息(虽然可以通过自定义 mirror 实现)

mysql 配置参考(docker-compose):

mysql:image:mysql:8.0container_name:mysqlrestart:alwaysenvironment:-MYSQL_ROOT_PASSWORD=rootports:-3306:3306volumes:-./mysql/data:/var/lib/mysql-./mysql/my.cnf:/etc/mysql/my.cnf-./mysql/initdb:/docker-entrypoint-initdb.d-./mysql/mysql-files:/var/lib/mysql-files

安装 nacos

M1 支持版本nacos有限,这里要用zhusaidong/nacos-server-m1:2.0.3

# 注意需要加版本号,否则会拉取失败docker pull zhusaidong/nacos-server-m1:2.0.3

配置参考(docker-compose):

nacos:image:zhusaidong/nacos-server-m1:2.0.3container_name:nacosrestart:alwaysdepends_on:-mall4cloud-mysqlports:-8848:8848-9848:9848-9849:9849environment:-JVM_XMS=256m-JVM_XMX=256m-MODE=standalone-PREFER_HOST_MODE=hostname-SPRING_DATASOURCE_PLATFORM=mysql-MYSQL_SERVICE_HOST=XXXX-MYSQL_SERVICE_DB_NAME=nacos-MYSQL_SERVICE_USER=root-MYSQL_SERVICE_PASSWORD=root-MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone==GMT%2B8volumes:-./nacos/logs:/home/nacos/logs

问题

mac m1 中nacos 连接显示No DataSource set

NacosServerdidnotstart because dumpservice bean construction failure:NoDataSourceset

mysql使用的是8+版本,所以记得添加serverTimezone=GMT%2B8

参考

characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true

重点

我首先在nacos 的容器中使用 curl 命令查看

curl localhost:3306

结果是:

docker curl:(7)Failedto connect to localhost port3306:Connectionrefused

顺着找下去原因

在容器外面是可以curl到容器的地址,但是就是在容量内不能curl连接到容器地址

这里直接使用电脑的 ip 代替 localhost 以及 127.0.0.1 来

附:mac 查找自己 ip 的cmd 命令

ifconfig

将 ip 填到MYSQL_SERVICE_HOST的配置项中

最终成功问题解决

声明:本站所有文章,如无特殊说明或标注,均为爬虫抓取以及网友投稿,版权归原作者所有。