SpringCloudアリババマイクロサービスリアル - 基本的な環境準備

基本的な環境準備 - Springcloud Aibabaは今火災ので、私は常に、ビルドマイクロサービスアーキテクチャSpringcloudアリババを書きたいついにこのシリーズの最初の記事、今日から開始することを決め、段階的に基づいて、一連のブログ。

顧客サービス:シリーズは、主に3つのマイクロサービスに基づいてAccountService、オーダーサービスOrderService、商品およびサービスProductService

使用するコンポーネントは以下のとおりです。

  • 登録センター、物流センターナコス
  • センチネルを制限
  • 分散トランザクションSeata
  • ゲートウェイSpringCloudゲートウェイ
  • 認証と認可の春の雲のOAuth2
  • ドッキングウィンドウ、ドッキングウィンドウ、コン

比較的大型のに使用されるコンポーネントは、展開が非常に複雑になるので、私は徐々にドッカ-コンを使用して展開されるいくつかのコンポーネントを開発中だので、それは、最も重要な資源サーバではありません。
image.png

この部分では、基本的な環境の一連の背後にあるとして、Dokcer・コン展開ナコス、センチネル、MySQLを使用することです。

あなたがドッキングウィンドウまたはドッキングウィンドウ-コンに精通していない場合、あなたは私の前の二つの記事を見ることができ、私はそれを読んだ後、すぐに始めることができると信じています。

コンテナ

mysqlの

ナコスので、私が最初にmysqlの一時的なコンテナのドッキングウィンドウを起動しますフルドッカ - コンを書き込む前に、リソースとして保存されたのMysqlに頼る必要があるため、データベース準備ナコスが必要です。

  • 一時的なコンテナを起動
    docker run -p3306:3306 --rm --name mysql -e MYSQL_ROOT_PASSWORD=123456 -v /app/cloud/mysql/data:/var/lib/mysql mysql:5.7
    しますが、ホストディレクトリをマウントすると、データは開始後の再知人のドッキングウィンドウ-compseする必要はありません。

  • あなたのコンテナでMySQLクライアント接続は、その後、データテーブルナコスに導入します
    https://github.com/alibaba/nacos/tree/develop/distribution/conf/ nacos-mysql.sql
    image.png

  • 原因のほかに、コンテナを停止し--rm、コンテナが自動的に削除されますので、パラメータ
    docker stop 3475ef078d3a

ナコス

次の表に示すように我々は、ナコス環境変数を見てみましょう:

構成アイテム 説明 オプションのパラメータ デフォルト値
モード モードクラスタ/スタンドアロン クラスタ/スタンドアロン cluster
PREFER_HOST_MODE 是否支持 hostname hostname/ip ip
NACOS_SERVER_PORT 服务端口号 8848
SPRING_DATASOURCE_PLATFORM 单机模式支持 mysql mysql / empty empty
MYSQL_MASTER_SERVICE_HOST mysql 主节点 host
MYSQL_MASTER_SERVICE_PORT mysql 主节点 port 3306
MYSQL_MASTER_SERVICE_DB_NAME mysql 主节点数据库名
MYSQL_MASTER_SERVICE_USER mysql 主节点用户名
MYSQL_MASTER_SERVICE_PASSWORD mysql 主节点密码
MYSQL_SLAVE_SERVICE_HOST mysql 从节点 host
MYSQL_SLAVE_SERVICE_PORT mysql 从节点 port 3306

Nacos支持主从配置,考虑到资源问题,我们只配置一台单独的mysql服务器,有资源的同学可以搭建主从环境。

sentinel

sentinel比较简单,直接配置sentinel-dashboard镜像即可。
(在系列的开始不需要引入sentinel组件,为了后面不再单独介绍,本次我也把他加到我的docker-compose中)

seata

seata由于一些原因,还没发布官方镜像,暂时搁浅。

docker-compose

以下是我编写的docker-compse文件,大家可以自行修改

version: "3"
services:
  mysql:
    container_name: mysql
    image: mysql:5.7
    environment:
      - MYSQL_ROOT_PASSWORD=123456
    volumes:
      - /app/cloud/mysql/data:/var/lib/mysql
    ports:
      - "3306:3306"
    restart: always

  nacos:
    image: nacos/nacos-server:1.1.4
    container_name: nacos
    environment:
      - PREFER_HOST_MODE=hostname
      - MODE=standalone
      - MYSQL_DATABASE_NUM=1
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_MASTER_SERVICE_HOST=mysql
      - MYSQL_MASTER_SERVICE_DB_NAME=nacos_config
      - MYSQL_MASTER_SERVICE_PORT=3306
      - MYSQL_MASTER_SERVICE_USER=root
      - MYSQL_MASTER_SERVICE_PASSWORD=123456
    volumes:
      - /app/cloud/nacos/logs:/home/nacos/logs
    ports:
      - "8848:8848"
    depends_on:
      - mysql
    restart: always


  sentinel:
    image: bladex/sentinel-dashboard:latest
    container_name: sentinel
    ports:
      - "8858:8858"
    restart: always

将其上传至你的服务器,执行docker-compose up -d命令启动

环境验证

nacos

访问nacoshttp://192.168.136.129:8848/nacos,使用账号密码nacos/nacos登录,添加一个name=JAVA日知录的配置。
image.png
nacos安装成功!

mysql

参照、接続サービスへのMySQLクライアントツールを使用してhis_config_info、設定があるかどうかだけを確認するために、テーブルを
image.png
MySQLのインストールは成功しました!

センチネル

アクセスhttp://192.168.136.129:8858アカウントセンチネル/センチネルログイン使用して
image.png
センチネルインストールが成功したことを!

問題を終了します記事、次の問題は、運命の別れ - この時点で、必要なコンポーネントは、その後、「への準備ができて、基本的な環境SpringCloud Alibabaの実際のマイクロサービス」の問題は、初期の成功を設置しています!

個人公開番号:JAVA Rizhilu、javadaily.cn

アバター

おすすめ

転載: www.cnblogs.com/jianzh5/p/11959885.html