安装

使用 docker 启动 nacos


# 使用standalone模式并开放8848端口,并映射配置文件和日志目录,数据库默认使用 Derby
docker pull nacos/nacos-server

~ ❯ mkdir -p nacos/logs
~ ❯ touch nacos/custom.properties
~ ❯ vi nacos/custom.properties

management.endpoints.web.exposure.include=*


docker run -d \
-p 8848:8848 \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-v /Users/kami/nacos/custom.properties:/home/nacos/init.d/custom.properties \
-v /Users/kami/nacos/logs:/home/nacos/logs \
--restart always \
--name nacos \
nacos/nacos-server # Macos m1 使用 zill057/nacos-server-apple-silicon:2.0.3

docker start nacos

使用docker-compose 启动

standalone-derby.yaml

version: "2"
services:
nacos:
image: nacos/nacos-server:latest
container_name: nacos
environment:
- MODE=standalone
volumes:
- /Users/kami/nacos/logs:/home/nacos/logs
- /Users/kami/nacos/custom.properties:/home/nacos/init.d/custom.properties
ports:
- "8848:8848"
#启动
docker-compose -f standalone-derby.yaml up

登录

打开 Nacos
账号密码:nacos/nacos

操作备忘

#启动
docker-compose -f standalone-derby.yaml up
#关闭
docker-compose -f standalone-derby.yaml stop
#移除
docker-compose -f standalone-derby.yaml rm
#关闭并移除
docker-compose -f standalone-derby.yaml down

(24条消息) docker安装nacos_docker nacos_流沙的牵挂的博客-CSDN博客

问题

Apple Mac M1 docker环境下nacos无法启动 · Issue #6340 · alibaba/nacos


~ ❯ docker logs nacos

23:13:07.454 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
com.alibaba.nacos.api.exception.runtime.NacosRuntimeException: ErrCode:500, ErrMsg:Function not implemented
at com.alibaba.nacos.core.listener.StartingApplicationListener.loadPreProperties(StartingApplicationListener.java:161)
at com.alibaba.nacos.core.listener.StartingApplicationListener.environmentPrepared(StartingApplicationListener.java:100)
at com.alibaba.nacos.core.code.SpringApplicationRunListener.environmentPrepared(SpringApplicationRunListener.java:65)
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53)
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:342)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:305)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204)
at com.alibaba.nacos.Nacos.main(Nacos.java:35)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467)
Caused by: com.alibaba.nacos.api.exception.NacosException: java.io.IOException: Function not implemented
at com.alibaba.nacos.sys.file.WatchFileCenter$WatchDirJob.<init>(WatchFileCenter.java:189)
at com.alibaba.nacos.sys.file.WatchFileCenter.registerWatcher(WatchFileCenter.java:97)
at com.alibaba.nacos.core.listener.StartingApplicationListener.registerWatcher(StartingApplicationListener.java:167)
at com.alibaba.nacos.core.listener.StartingApplicationListener.loadPreProperties(StartingApplicationListener.java:159)
... 16 common frames omitted
Caused by: java.io.IOException: Function not implemented
at sun.nio.fs.LinuxWatchService.<init>(LinuxWatchService.java:64)
at sun.nio.fs.LinuxFileSystem.newWatchService(LinuxFileSystem.java:47)
at com.alibaba.nacos.sys.file.WatchFileCenter$WatchDirJob.<init>(WatchFileCenter.java:184)
... 19 common frames omitted