docker單機(jī)安裝Higress的踩坑及解決方式
docker單機(jī)安裝Higress(踩坑+解決)
Higress希望通過(guò)內(nèi)置Waf模塊,使得用戶的請(qǐng)求鏈接只經(jīng)過(guò)Higress就可以同時(shí)完成Waf防護(hù)、流量分發(fā)、微服務(wù)治理,既可以降低鏈路RT,也可以降低網(wǎng)關(guān)的運(yùn)維復(fù)雜度。因此Higress實(shí)現(xiàn)了流量網(wǎng)關(guān) + 微服務(wù)網(wǎng)關(guān) + 安全網(wǎng)關(guān)三合一的高集成能力。
安裝docker(更換鏡像索引)
# 卸載Docker
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
# 安裝yum工具包
yum install -y yum-utils \
device-mapper-peyrsistent-data \
lvm2 --skip-broken
# 更新本地鏡像源
# 設(shè)置docker鏡像源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
# 將軟件包信息提前在本地索引緩存,用來(lái)提高搜索安裝軟件的速度,建議執(zhí)行這個(gè)命令可以提升yum安裝的速度。
yum makecache fast
# 安裝docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
# 啟動(dòng)docker
systemctl start docker
# 設(shè)置docker自啟動(dòng)
systemctl enable docker
# 測(cè)試docker是否安裝成功
docker version
安裝命令
curl -fsSL https://higress.io/standalone/get-higress.sh | bash -s -- [DESTINATION] [OPTIONS...]
curl -fsSL https://higress.io/standalone/get-higress.sh | bash -s -- -a -c nacos://192.168.66.100:8848
Standalone 模式?jīng)]有大規(guī)模生產(chǎn)使用過(guò),目前主要用于本地部署測(cè)試的場(chǎng)景,如果生產(chǎn)部署更建議云原生模式部署
安裝參數(shù)
| 參數(shù)名 | 參數(shù)說(shuō)明 | 默認(rèn)值 |
|---|---|---|
| DESTINATION | 目標(biāo)安裝目錄 | ./higress |
| -a --auto-run | 配置完成后自動(dòng)啟動(dòng) Higress 網(wǎng)關(guān) | 無(wú) |
| -c CONFIG_URL --config-url CONFIG_URL | 配置服務(wù)的 URL。 - 若使用獨(dú)立部署的 Nacos 服務(wù)(版本不低于 2.0.0),URL 格式為:nacos://192.168.0.1:8848 - 若在本地磁盤上保存配置,URL 格式為:file://opt/higress/conf | 無(wú) |
| –use-builtin-nacos | 使用內(nèi)置的 Nacos 服務(wù)。不建議用于生產(chǎn)環(huán)境。如果設(shè)置本參數(shù),則無(wú)需設(shè)置-c參數(shù) | 無(wú) |
| –nacos-ns=NACOS_NAMESPACE | 用于保存 Higress 配置的 Nacos 命名空間 ID | higress-system |
| –nacos-username=NACOS_USERNAME | 用于訪問(wèn) Nacos 的用戶名。僅用于 Nacos 啟動(dòng)了認(rèn)證的情況下 | 無(wú) |
| –nacos-password=NACOS_PASSWORD | 用于訪問(wèn) Nacos 的用戶密碼。僅用于 Nacos 啟動(dòng)了認(rèn)證的情況下 | 無(wú) |
| -k KEY --data-enc-key=KEY | 用于加密敏感配置數(shù)據(jù)的密鑰。長(zhǎng)度必須為 32 個(gè)字符。若未設(shè)置,Higress 將自動(dòng)生成一個(gè)隨機(jī)的密鑰。若需集群部署,此項(xiàng)必須設(shè)置 | 隨機(jī)字符串 |
| –nacos-port=NACOS_PORT | 內(nèi)置 NACOS 服務(wù)在服務(wù)器本地監(jiān)聽的端口 | 8848 |
| –gateway-http-port=GATEWAY_HTTP_PORT | Higress Gateway 在服務(wù)器本地監(jiān)聽的 HTTP 端口 | 80 |
| –gateway-https-port=GATEWAY_HTTPS_PORT | Higress Gateway 在服務(wù)器本地監(jiān)聽的 HTTPS 端口 | 443 |
| –gateway-metrics-port=GATEWAY_METRIC_PORT | Higress Gateway 在服務(wù)器本地監(jiān)聽的用于暴露運(yùn)行指標(biāo)端口 | 15020 |
| –console-port=CONSOLE_PORT | Higress Console 在服務(wù)器本地監(jiān)聽的端口 | 8080 |
| -r --rerun | 在 Higress 已配置完成后重新執(zhí)行配置流程 | 無(wú) |
| -h --help | 顯示幫助信息 | 無(wú) |
解決配置成功無(wú)法訪問(wèn)的問(wèn)題

遇到了無(wú)法訪問(wèn)的問(wèn)題;
- 端口號(hào)正常監(jiān)聽

- 查看日志發(fā)現(xiàn)有錯(cuò)
docker logs higress-console-1
2024-04-15 09:45:47.655 ERROR 7 --- [ main] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'SystemController': Invocation of init method failed; nested exception is com.alibaba.higress.sdk.exception.BusinessException: Error occurs when updating ConfigMap.
- 查看docker 容器

解決
去 /root/higress/bin/ 目錄下 reset

仍然無(wú)法正常訪問(wèn)
卸載并重裝docker后正常訪問(wèn)

配置域名后無(wú)法通過(guò)域名訪問(wèn)廣告服務(wù)

解決
徹底卸載重新安裝
1.刪除所有容器:
docker rm $(docker ps -a -q) -f
這條命令會(huì)強(qiáng)制刪除所有的Docker容器,無(wú)論其運(yùn)行狀態(tài)如何。
2.刪除所有鏡像:
docker rmi $(docker images -q) -f
這條命令會(huì)刪除所有的Docker鏡像。
3.刪除與higress相關(guān)的文件
可以使用find命令來(lái)搜索并刪除這些文件:這條命令會(huì)在整個(gè)系統(tǒng)中搜索文件或文件夾名包含“higress”的所有項(xiàng),并將其刪除。
find / -name '*higress*' -exec rm -rf {} +
記住 cd 到 /usr/local 目錄下 執(zhí)行下面操作進(jìn)行安裝
curl -fsSL https://higress.io/standalone/get-higress.sh | bash -s -- -a -c nacos://192.168.66.100:8848



官網(wǎng)樣例測(cè)試成功

不是哥們兒 你是真不穩(wěn)定啊……弄的我docker有問(wèn)題+MQ也起不起來(lái)了
感覺(jué)這樣部署的話還是有問(wèn)題,考慮把數(shù)據(jù)庫(kù)遷移到linux里;
思考了一下還是覺(jué)得應(yīng)該是官網(wǎng)推出的docker這個(gè)版本本身就是個(gè)測(cè)試版不穩(wěn)定的原因
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker 鏡像國(guó)內(nèi)加速的方法匯總(收藏版)
本文介紹了在國(guó)內(nèi)使用Docker時(shí)遇到的加速和優(yōu)化方法,針對(duì)國(guó)內(nèi)下載速度慢和斷線問(wèn)題,可以使用國(guó)內(nèi)可用的DockerRegistryMirrors或自建DockerRegistryMirror/Proxy,針對(duì)沒(méi)有公共鏡像庫(kù)賬號(hào)導(dǎo)致的限流問(wèn)題,可以注冊(cè)各個(gè)鏡像庫(kù)賬號(hào)并登錄,感興趣的朋友跟隨小編一起看看吧2025-01-01
云centos開啟docker遠(yuǎn)程服務(wù)鏈接的實(shí)現(xiàn)步驟
本文主要介紹了云centos開啟docker遠(yuǎn)程服務(wù)鏈接,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
docker-compose安裝redis過(guò)程-主從+哨兵(3臺(tái)虛擬機(jī)一主兩從)
文章介紹了使用Docker部署Redis主從架構(gòu)及哨兵監(jiān)控的全過(guò)程,包括部署架構(gòu)、配置文件準(zhǔn)備、Docker-Compose文件編寫、部署步驟以及測(cè)試主從復(fù)制和故障轉(zhuǎn)移功能2026-04-04
詳解利用nginx和docker實(shí)現(xiàn)一個(gè)簡(jiǎn)易的負(fù)載均衡
本篇文章主要介紹了利用nginx和docker實(shí)現(xiàn)一個(gè)簡(jiǎn)易的負(fù)載均衡 ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06

