Compare commits

...

2 Commits

Author SHA1 Message Date
2ed0f8af89 [2025-01-11] 添加Nacos安装及SSO接入指南
All checks were successful
Publish to Confluence / confluence (push) Successful in 43s
2025-01-11 15:47:55 +08:00
b36e067e11 [2025-01-11] 添加Nacos安装及SSO接入指南 2025-01-11 15:46:00 +08:00
2 changed files with 43 additions and 8 deletions

View File

@ -89,7 +89,7 @@ jobs:
# url 替换 # url 替换
sed -i -E 's/(.*\!\[.*\]\([ \t]*(http(s)?:\/\/)([^:\r\n\t\!]*(\.[a-zA-Z]+)?)[ \t]*\))([ ]*<\!\-\-[ \t]*width=[0-9]*[ \t]*\-\->)*/\1<!-- width=750 -->/g' $temp_path sed -i -E 's/(.*\!\[.*\]\([ \t]*(http(s)?:\/\/)([^:\r\n\t\!]*(\.[a-zA-Z]+)?)[ \t]*\))([ ]*<\!\-\-[ \t]*width=[0-9]*[ \t]*\-\->)*/\1<!-- width=750 -->/g' $temp_path
# 不支持的代码块替换 # 不支持的代码块替换
sed -i -E 's/(.*)(```(dockerfile|json|toml))(.*)/\1```shell\4/g' $temp_path sed -i -E 's/(.*)(```(dockerfile|json|toml|properties))(.*)/\1```shell\4/g' $temp_path
# 标题添加锚点 # 标题添加锚点
sed -i -E 's/([#]+[ ]+)(.*)/\1\2 :anchor(\2):/g' $temp_path sed -i -E 's/([#]+[ ]+)(.*)/\1\2 :anchor(\2):/g' $temp_path
sed -i -E "s@(\[.*\])(\(#)(.*)(\))@\1\2id-$(echo $temp_filename | tr -d '-')-\3\4@g" $temp_path sed -i -E "s@(\[.*\])(\(#)(.*)(\))@\1\2id-$(echo $temp_filename | tr -d '-')-\3\4@g" $temp_path

View File

@ -22,14 +22,18 @@
<!-- :toc: --> <!-- :toc: -->
# Nacos 安装及 SSO 接入指南 # Nacos 安装及 SSO 接入指南
- Nacos 版本 `2.1.1` - Nacos 版本 `2.1.1`
- JDK 版本 `1.8.0_431` - JDK 版本 `1.8.0_431`
- Node 版本 `v16.20.2` - Node 版本 `v16.20.2`
- [附件包](../材料/nacos.zip) - [附件包](../材料/nacos.zip)
## Nacos 打包 ## Nacos 打包
### 获取 Nacos 代码 ### 获取 Nacos 代码
#### 获取代码 #### 获取代码
```shell ```shell
#- 进入工作目录 #- 进入工作目录
cd /usr/local/nacos cd /usr/local/nacos
@ -42,8 +46,11 @@ git checkout -b feat/add-oidc-auth 2.1.1
``` ```
### 添加SSO功能 ### 添加SSO功能
#### 附件包解压 #### 附件包解压
- 将附件包释放到 /usr/local/nacos 文件夹下
- 将 [附件包](../材料/nacos.zip) 释放到 /usr/local/nacos 文件夹下
```shell ```shell
cd /usr/local/nacos cd /usr/local/nacos
@ -51,6 +58,7 @@ unzip nacos.zip
``` ```
#### 前端变更 #### 前端变更
```shell ```shell
cp /usr/local/nacos/Login.jsx /usr/local/nacos/nacos/console-ui/src/pages/Login/Login.jsx cp /usr/local/nacos/Login.jsx /usr/local/nacos/nacos/console-ui/src/pages/Login/Login.jsx
@ -70,6 +78,7 @@ cp /usr/local/nacos/OidcUtil.java /usr/local/nacos/nacos/plugin-default-impl/src
``` ```
#### 前端构建 #### 前端构建
```shell ```shell
#- 进入目录 #- 进入目录
cd /usr/local/nacos/nacos/console-ui cd /usr/local/nacos/nacos/console-ui
@ -80,9 +89,11 @@ npm install --registry https://registry.npmmirror.com
#- 构建项目 #- 构建项目
npm run build --registry https://registry.npmmirror.com npm run build --registry https://registry.npmmirror.com
``` ```
- `npm run build` 执行成功后会自动把 dist 文件夹下的某些文件拷贝到对应的项目下 - `npm run build` 执行成功后会自动把 dist 文件夹下的某些文件拷贝到对应的项目下
#### 服务构建 #### 服务构建
```shell ```shell
#- 进入目录 #- 进入目录
cd /usr/local/nacos/nacos cd /usr/local/nacos/nacos
@ -92,25 +103,33 @@ mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U
``` ```
#### 获取打包服务 #### 获取打包服务
```shell ```shell
cp /usr/local/nacos/nacos/distribution/target/nacos-server-2.1.1.tar.gz /usr/local/nacos cp /usr/local/nacos/nacos/distribution/target/nacos-server-2.1.1.tar.gz /usr/local/nacos
``` ```
## 镜像构建 ------
## Nacos 镜像构建
### 获取阿里镜像源 ### 获取阿里镜像源
- 附件包中的 `Centos-7.repo` - 附件包中的 `Centos-7.repo`
- 或者执行以下命令获取 - 或者执行以下命令获取
```shell ```shell
wget -O /usr/local/nacos/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo wget -O /usr/local/nacos/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo
``` ```
### 创建 Dockerfile 文件 ### 创建 Dockerfile 文件
- `vi /usr/local/nacos/Dockerfile` - `vi /usr/local/nacos/Dockerfile`
```dockerfile ```dockerfile
FROM centos:7.9.2009 FROM centos:7.9.2009
MAINTAINER pader "test@test.com" MAINTAINER pader "test@test.com"
# set environment #- set environment
ENV MODE="cluster" \ ENV MODE="cluster" \
PREFER_HOST_MODE="ip"\ PREFER_HOST_MODE="ip"\
BASE_DIR="/home/nacos" \ BASE_DIR="/home/nacos" \
@ -140,7 +159,7 @@ RUN set -x \
&& yum update -y \ && yum update -y \
&& yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel wget iputils nc vim libcurl && yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel wget iputils nc vim libcurl
# RUN wget https://github.com/alibaba/nacos/releases/download/${NACOS_VERSION}${HOT_FIX_FLAG}/nacos-server-${NACOS_VERSION}.tar.gz -P /home #- RUN wget https://github.com/alibaba/nacos/releases/download/${NACOS_VERSION}${HOT_FIX_FLAG}/nacos-server-${NACOS_VERSION}.tar.gz -P /home
COPY ./nacos-server-${NACOS_VERSION}.tar.gz /home/ COPY ./nacos-server-${NACOS_VERSION}.tar.gz /home/
@ -155,7 +174,7 @@ ADD bin/docker-startup.sh bin/docker-startup.sh
ADD conf/application.properties conf/application.properties ADD conf/application.properties conf/application.properties
# set startup log dir #- set startup log dir
RUN mkdir -p logs \ RUN mkdir -p logs \
&& cd logs \ && cd logs \
&& touch start.out \ && touch start.out \
@ -168,7 +187,9 @@ ENTRYPOINT ["bin/docker-startup.sh"]
``` ```
### 构建镜像 ### 构建镜像
#### 添加启动脚本 #### 添加启动脚本
```shell ```shell
#- 创建文件夹 #- 创建文件夹
mkdir /usr/local/naco/bin mkdir /usr/local/naco/bin
@ -179,6 +200,7 @@ cp /usr/local/nacos/application.properties /usr/local/nacos/conf/application.pro
``` ```
#### 构建 #### 构建
```shell ```shell
#- 进入工作目录 #- 进入工作目录
cd /usr/local/nacos cd /usr/local/nacos
@ -187,9 +209,14 @@ cd /usr/local/nacos
docker build -f Dockerfile -t nacos/nacos-server:v2.1.1 . docker build -f Dockerfile -t nacos/nacos-server:v2.1.1 .
``` ```
## 服务启动 ----
## Nacos 服务启动
### 创建 Docker Compose 文件 ### 创建 Docker Compose 文件
- `vi /usr/local/nacos/docker-compose.yaml` - `vi /usr/local/nacos/docker-compose.yaml`
```yaml ```yaml
version: "3.6" version: "3.6"
services: services:
@ -209,17 +236,20 @@ services:
- "8848:8848" - "8848:8848"
- "9848:9848" - "9848:9848"
``` ```
### 启动服务 ### 启动服务
```shell ```shell
docker compose -f /usr/local/nacos/docker-compose.yaml up -d docker compose -f /usr/local/nacos/docker-compose.yaml up -d
``` ```
### 配置 OIDC ### 配置 OIDC
- `vi /usr/local/nacos/init.d/application.properties` - `vi /usr/local/nacos/init.d/application.properties`
- 在最后面追加 - 在最后面追加
```properties ```properties
#*************** OIDC Related Configurations ***************# #*************** OIDC Related Configurations ***************#
### OpenId providers' key, list is supported(separated by comma) ### OpenId providers' key, list is supported(separated by comma)
nacos.core.auth.oidc-idp=keycloak nacos.core.auth.oidc-idp=keycloak
### corresponding OpenId providers' name, displayed in the login page ### corresponding OpenId providers' name, displayed in the login page
@ -244,14 +274,19 @@ nacos.core.auth.oidc-idp.keycloak.enable-create=true
``` ```
### 重启服务 ### 重启服务
```shell ```shell
#- 停止 #- 停止
docker compose -f /usr/local/nacos/docker-compose.yaml down docker compose -f /usr/local/nacos/docker-compose.yaml down
#- 启动 #- 启动
docker compose -f /usr/local/nacos/docker-compose.yaml up -d docker compose -f /usr/local/nacos/docker-compose.yaml up -d
``` ```
- 或者使用 `docker compose restart` 重启服务 - 或者使用 `docker compose restart` 重启服务
----
## 参考 ## 参考
- [Support for logining to console through OIDC #7747](https://github.com/alibaba/nacos/pull/7747/files) - [Support for logining to console through OIDC #7747](https://github.com/alibaba/nacos/pull/7747/files)