docker-compose安裝nacos

本文只介紹基于mysql5.7的standalone單機(jī)版本安裝刺下,更多類型安裝碳抄,請(qǐng)參考:https://github.com/nacos-group/nacos-docker/blob/master/README_ZH.md

下載 nacos 1.2.0 葵姥,并準(zhǔn)備好nacos需要的數(shù)據(jù)庫(kù)

  1. 下載1.2.0版本的zip包(這個(gè)包里有運(yùn)行腳本灸眼,可以直接運(yùn)行nacos,但這是傳統(tǒng)方式運(yùn)行榴捡,我們這里主要講使用docker運(yùn)行,所以此包僅僅是為了一個(gè)數(shù)據(jù)庫(kù)腳本文件nacos-mysql.sql)
  2. 在已經(jīng)安裝好的mysql庫(kù)中創(chuàng)建nacos數(shù)據(jù)庫(kù)洋丐,并使用nacos提供的初始化腳本conf/nacos-mysql.sql初始化nacos;
  3. 創(chuàng)建一個(gè)nacos用戶挥等,并授予所有權(quán)限
CREATE USER 'nacos'@'%' IDENTIFIED BY 'Nacos501472';
grant all on nacos.* to 'nacos'@'%' with grant option;
flush privileges;

創(chuàng)建虛擬網(wǎng)絡(luò)友绝,關(guān)聯(lián)已經(jīng)安裝好的mysql容器

現(xiàn)實(shí)中往往是多個(gè)應(yīng)用容器使用同一個(gè)mysql,我們這里也不例外,docker-compose編排的容器內(nèi)部要想訪問編排之外的容器肝劲,一定要保證網(wǎng)絡(luò)是通的迁客,所以我們要?jiǎng)?chuàng)建一個(gè)網(wǎng)絡(luò),把mysql和nacos統(tǒng)一到一個(gè)網(wǎng)絡(luò)中辞槐。

#創(chuàng)建一個(gè)名為 net-docker的網(wǎng)絡(luò)掷漱,在docker-compose中使用external_links關(guān)鍵字關(guān)聯(lián)
docker network create net-docker --driver bridge

下載docker-compose編排文件及配置

  • Clone 項(xiàng)目 并且進(jìn)入項(xiàng)目根目錄

git clone https://github.com/paderlol/nacos-docker.git cd nacos-docker

  • 修改編排文件(nacos-docker/example/standalone-mysql-5.7.yaml),下面配置重點(diǎn)關(guān)注external_links和networks榄檬。此編排中還起了兩個(gè)容器卜范,分別是prometheus和grafana,以后再詳細(xì)介紹
$ vi standalone-mysql-5.7.yaml
version: "3.1"  #這個(gè)版本和宿主機(jī)docker-compose版本相關(guān)
services:
  nacos: #服務(wù)名
    image: nacos/nacos-server:latest #使用nacos鏡像
    container_name: nacos-standalone-mysql
    env_file:
      - ../env/nacos-standlone-mysql.env #指定配置文件
    volumes: #掛載目錄
      - ./standalone-logs/:/home/nacos/logs
      - ./init.d/custom.properties:/home/nacos/init.d/custom.properties
    ports:
      - "8848:8848" #暴露端口[宿主機(jī)端口:docker容器端口]
    external_links: #關(guān)聯(lián)容器外的 MySQL鹿榜,因?yàn)椴皇敲總€(gè)docker編排都起一個(gè)mysql的(這個(gè)要生效海雪,一定要?jiǎng)?chuàng)建虛擬網(wǎng)絡(luò)此處為net-docker)
      - mysql:5.7
    restart: on-failure
  prometheus: #
    container_name: prometheus
    image: prom/prometheus:latest
    volumes:
      - ./prometheus/prometheus-standalone.yaml:/etc/prometheus/prometheus.yml
    ports:
      - "9090:9090"
    depends_on:
      - nacos
    restart: on-failure
  grafana: #圖形化組件
    container_name: grafana
    image: grafana/grafana:latest
    ports:
      - 3000:3000
    restart: on-failure
networks: #配置和mysql容器互通的網(wǎng)絡(luò)net-docker
  default:
    external:
      name: net-docker
  • 修改standalone-mysql-5.7.yaml中涉及到的mysql配置文件/env/nacos-standlone-mysql.env
PREFER_HOST_MODE=hostname
#單機(jī)模式
MODE=standalone
SPRING_DATASOURCE_PLATFORM=mysql
#mysql主機(jī)名稱(可以直接ping通mysql容器的ip)
MYSQL_SERVICE_HOST=mysql
# nacos使用的數(shù)據(jù)庫(kù)名稱
MYSQL_SERVICE_DB_NAME=nacos
MYSQL_SERVICE_PORT=3306
MYSQL_SERVICE_USER=nacos
MYSQL_SERVICE_PASSWORD=Nacos
# 是否使用授權(quán)(為true時(shí),需要登錄才能操作里面的功能)
NACOS_AUTH_ENABLE=true
NACOS_AUTH_TOKEN_EXPIRE_SECONDS=36000
  • 修改standalone-mysql-5.7.yaml中涉及到的環(huán)境變量文件(init.d/custom.properties)
spring.security.enabled=true
management.security=true
security.basic.enabled=true
# 忽略的資源配置
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
management.metrics.export.elastic.host=http://localhost:9200
# metrics for prometheus
anagement.endpoints.web.exposure.include=*

# metrics for elastic search
management.metrics.export.elastic.enabled=true
management.metrics.export.elastic.host=http://localhost:9200

# metrics for influx
#management.metrics.export.influx.enabled=false
#management.metrics.export.influx.db=springboot
#management.metrics.export.influx.uri=http://localhost:8086
#management.metrics.export.influx.auto-create-db=true
#management.metrics.export.influx.consistency=one
#management.metrics.export.influx.compressed=true
  • 進(jìn)入example目錄舱殿,然后啟動(dòng)docker編排
#啟動(dòng)
docker-compose -f standalone-mysql-5.7.yaml up -d
#如果配置有調(diào)整需要停止nacos的奥裸,使用此命令
docker-compose -f standalone-mysql-5.7.yaml down

常見問題定位

  • 查看當(dāng)前有效路由

http://10.0.10.225:8002/actuator/gateway/routes

  • 查看指定服務(wù)的實(shí)例

http://10.0.10.225:8001/nacos/v1/ns/instance/list?serviceName=the-api

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末怀薛,一起剝皮案震驚了整個(gè)濱河市刺彩,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌枝恋,老刑警劉巖创倔,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異焚碌,居然都是意外死亡畦攘,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門十电,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)知押,“玉大人叹螟,你說(shuō)我怎么就攤上這事√ǘⅲ” “怎么了罢绽?”我有些...
    開封第一講書人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)静盅。 經(jīng)常有香客問我良价,道長(zhǎng),這世上最難降的妖魔是什么蒿叠? 我笑而不...
    開封第一講書人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任明垢,我火速辦了婚禮,結(jié)果婚禮上市咽,老公的妹妹穿的比我還像新娘痊银。我一直安慰自己,他們只是感情好施绎,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開白布溯革。 她就那樣靜靜地躺著,像睡著了一般粘姜。 火紅的嫁衣襯著肌膚如雪鬓照。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評(píng)論 1 309
  • 那天孤紧,我揣著相機(jī)與錄音豺裆,去河邊找鬼。 笑死号显,一個(gè)胖子當(dāng)著我的面吹牛臭猜,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播押蚤,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼蔑歌,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了揽碘?” 一聲冷哼從身側(cè)響起次屠,我...
    開封第一講書人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎雳刺,沒想到半個(gè)月后劫灶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡掖桦,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年本昏,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枪汪。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡涌穆,死狀恐怖怔昨,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情宿稀,我是刑警寧澤趁舀,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站祝沸,受9級(jí)特大地震影響赫编,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜奋隶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望悦荒。 院中可真熱鬧唯欣,春花似錦、人聲如沸搬味。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)碰纬。三九已至萍聊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間悦析,已是汗流浹背寿桨。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留强戴,地道東北人亭螟。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像骑歹,于是被迫代替她去往敵國(guó)和親预烙。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 1.Compose介紹 Docker Compose是一個(gè)用來(lái)定義和運(yùn)行復(fù)雜應(yīng)用的Docker工具。一個(gè)使用Doc...
    渝味閱讀 7,229評(píng)論 0 2
  • Compose 簡(jiǎn)介 Compose 項(xiàng)目是 Docker 官方的開源項(xiàng)目最域,負(fù)責(zé)實(shí)現(xiàn)對(duì) Docker 容器集群的快...
    daqiaowijiu閱讀 1,898評(píng)論 1 8
  • 一谴分、Docker-Compose簡(jiǎn)介 ??Docker-Compose項(xiàng)目是Docker官方的開源項(xiàng)目,負(fù)責(zé)實(shí)現(xiàn)對(duì)...
    無(wú)劍_君閱讀 886評(píng)論 0 1
  • 可以使用一個(gè)Dockerfile模板文件來(lái)快速構(gòu)建一個(gè)自己的鏡像并運(yùn)行為應(yīng)用容器羡宙,詳細(xì)請(qǐng)參考Dockerfile及...
    段永平閱讀 825評(píng)論 0 1
  • 1. 什么是Docker-Compose Compose項(xiàng)目來(lái)源于之前的fig項(xiàng)目狸剃,使用python語(yǔ)言編寫,與d...
    無(wú)為無(wú)味無(wú)心閱讀 2,146評(píng)論 0 1