Skip to content

Commit

Permalink
chore: update nacos config and startup content
Browse files Browse the repository at this point in the history
  • Loading branch information
mx52jing committed Jul 23, 2024
1 parent 264a442 commit 6543fde
Showing 1 changed file with 68 additions and 11 deletions.
79 changes: 68 additions & 11 deletions docs/knowledge-deposition/Nacos/基本概念和安装启动.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,29 +22,49 @@ Nacos提供四个主要功能:
- 启动nacos有`单机模式运行``集群模式`,今天只使用`单机模式`
:::

我们使用`Docker`来搭建`Nacos`服务,服务目录如下:
我们使用`Docker`来搭建`Nacos`服务,更多配置参考[quick-start-docker](https://nacos.io/en-us/docs/quick-start-docker.html)

服务目录如下:

```shell
.
├── .env
├── .env # 环境变量文件,用于standalone-mysql-8.yaml读取环境变量
├── env
│   ├── mysql.env
│   └── nacos-standlone-mysql.env
│   ├── mysql.env # mysql 环境变量
│   └── nacos-standlone-mysql.env # nacos相关环境变量
├── image
│   └── mysql8
│   └── Dockerfile
└── standalone-mysql-8.yaml
│   └── Dockerfile # 启动nacos依赖的mysql镜像的Dockerfile
└── standalone-mysql-8.yaml # docker-compose 启动文件配置
```

> `.env`
```yaml
NACOS_VERSION=v2.4.0.1
```

:::warning
- `Mac Apple`内核的机器要使用`v2.3.1-slim`版本的镜像,不然会报错,其他的内核应该用`v2.3.1`就行
:::
- 如果用的版本比`v2.4.0.1`低,`Mac Apple`内核可能报错
```shell
no matching manifest for linux/arm64/v8 in the manifest list entries
```
> 解决方法如下:
- 可以在`docker-compose.yaml`中添加`platform: linux/x86_64`,(这里我的启动配置是`standalone-mysql-8.yaml`),[参考链接](https://github.com/nacos-group/nacos-docker/issues/414)
```yaml
nacos:
image: nacos/nacos-server:${NACOS_VERSION}
container_name: NACOS_STANDALONE_MYSQL
restart: always
platform: linux/x86_64
```
- 或者`.env`文件指定使用`slim`版本镜像,[参考链接](https://github.com/nacos-group/nacos-docker/issues/356)
```yaml
NACOS_VERSION=v2.3.1-slim
```
:::
> `env/mysql.env`
Expand All @@ -68,9 +88,9 @@ MYSQL_SERVICE_PORT=3306 # 数据库端口
MYSQL_SERVICE_USER=nacos # 数据库用户名
MYSQL_SERVICE_PASSWORD=nacos # 数据库密码
MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
NACOS_AUTH_IDENTITY_KEY=2222
NACOS_AUTH_IDENTITY_VALUE=2xxx
NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789
NACOS_AUTH_IDENTITY_KEY=2222 # 鉴权用的先忽略
NACOS_AUTH_IDENTITY_VALUE=2xxx # 鉴权用的先忽略
NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789 # 鉴权用的先忽略
```
> `image/mysql8/Dockerfile`
Expand Down Expand Up @@ -135,3 +155,40 @@ docker-compose -f standalone-mysql-8.yaml up -d
然后访问[http://localhost:8848/nacos](http://localhost:8848/nacos)就可以看到主界面
> 此时可以看到主界面会有一个提示
:::warning
- 当前集群没有开启鉴权,请参考文档开启鉴权~
:::
## 开启鉴权
详细内容参考[Authentication](https://nacos.io/en-us/docs/v2/guide/user/auth.html)
> 修改`env/nacos-standlone-mysql.env`,修改/添加下面的字段
```yaml
# 其他字段
# xxx
NACOS_AUTH_ENABLE=true
NACOS_AUTH_IDENTITY_KEY=ZjcqSyNiIStfIjpNTEQ4OXkyM2tqYmtqQVMoKl5ZQCNSSktCTkNVKldUKiYjXkhUUEdJTm91NDUzeTUz
NACOS_AUTH_IDENTITY_VALUE=Zmprc2IwJiomIyVCSkJGSSZXVDNia2p0MjNpdTU2dHlzamtkYmdoZWdyM3QzNHQzNA==
NACOS_AUTH_TOKEN=OSgsazJIODlVODJhLXozMzM1aGpzMSpeJisyYlZIX0A4ODIxQkZLREYtKSMqJQ==
```
:::warning
- `NACOS_AUTH_IDENTITY_KEY``NACOS_AUTH_IDENTITY_VALUE``NACOS_AUTH_TOKEN`要使用`Base64`编码的字符串,字符串长度最少`32`
:::
然后重启`docker`服务
```shell
docker-compose -f xxx.yml down
docker-compose -f xxx.yml up -d
```
然后清空[http://localhost:8848/nacos](http://localhost:8848/nacos)页面的`localStorage`的值,刷新页面,会出现登录界面
> 默认:用户名:`nacos`,密码:`nacos`
登录成功就可以啦

0 comments on commit 6543fde

Please sign in to comment.