dockerでビルドしたnacos1.3.0の実装

dockerでビルドしたnacos1.3.0の実装

1. nacosデータベースを再開します。データベース名nacos_configユーザー名とパスワードnacos nacos

データベース スクリプト:

/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = config_info */
/**************************************************/
テーブル `config_info` を作成します (
 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
 `data_id` varchar(255) NOT NULL コメント 'data_id',
 `group_id` varchar(255) デフォルト NULL,
 `content` ロングテキスト NOT NULL COMMENT 'content',
 `md5` varchar(32) デフォルト NULL コメント 'md5',
 `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '作成時刻',
 `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '変更時刻',
 `src_user` テキスト COMMENT 'ソースユーザー',
 `src_ip` varchar(20) デフォルト NULL コメント 'ソース IP',
 `app_name` varchar(128) デフォルト NULL,
 `tenant_id` varchar(128) DEFAULT '' COMMENT 'テナントフィールド',
 `c_desc` varchar(256) デフォルト NULL,
 `c_use` varchar(64) デフォルト NULL,
 `effect` varchar(64) デフォルト NULL,
 `type` varchar(64) デフォルト NULL,
 `c_schema` テキスト、
 主キー (`id`)、
 一意のキー `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info';

/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = config_info_aggr */
/**************************************************/
テーブル `config_info_aggr` を作成します (
 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
 `data_id` varchar(255) NOT NULL コメント 'data_id',
 `group_id` varchar(255) NOT NULL コメント 'group_id',
 `datum_id` varchar(255) NOT NULL コメント 'datum_id',
 `content` ロングテキスト NOT NULL COMMENT 'content',
 `gmt_modified` datetime NOT NULL COMMENT '変更時刻',
 `app_name` varchar(128) デフォルト NULL,
 `tenant_id` varchar(128) DEFAULT '' COMMENT 'テナントフィールド',
 主キー (`id`)、
 一意のキー `uk_configinfoaggr_datagrouptenantdatum` (`data_id`、`group_id`、`tenant_id`、`datum_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='テナント フィールドを追加します';


/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = config_info_beta */
/**************************************************/
テーブル `config_info_beta` を作成します (
 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
 `data_id` varchar(255) NOT NULL コメント 'data_id',
 `group_id` varchar(128) NOT NULL コメント 'group_id',
 `app_name` varchar(128) デフォルト NULL コメント 'app_name',
 `content` ロングテキスト NOT NULL COMMENT 'content',
 `beta_ips` varchar(1024) デフォルト NULL コメント 'betaIps',
 `md5` varchar(32) デフォルト NULL コメント 'md5',
 `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '作成時刻',
 `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '変更時刻',
 `src_user` テキスト COMMENT 'ソースユーザー',
 `src_ip` varchar(20) デフォルト NULL コメント 'ソース IP',
 `tenant_id` varchar(128) DEFAULT '' COMMENT 'テナントフィールド',
 主キー (`id`)、
 一意のキー `uk_configinfobeta_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_beta';

/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = config_info_tag */
/**************************************************/
テーブル `config_info_tag` を作成します (
 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
 `data_id` varchar(255) NOT NULL コメント 'data_id',
 `group_id` varchar(128) NOT NULL コメント 'group_id',
 `tenant_id` varchar(128) デフォルト '' COMMENT 'tenant_id',
 `tag_id` varchar(128) NOT NULL コメント 'tag_id',
 `app_name` varchar(128) デフォルト NULL コメント 'app_name',
 `content` ロングテキスト NOT NULL COMMENT 'content',
 `md5` varchar(32) デフォルト NULL コメント 'md5',
 `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '作成時刻',
 `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '変更時刻',
 `src_user` テキスト COMMENT 'ソースユーザー',
 `src_ip` varchar(20) デフォルト NULL コメント 'ソース IP',
 主キー (`id`)、
 一意のキー `uk_configinfotag_datagrouptenanttag` (`data_id`、`group_id`、`tenant_id`、`tag_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_tag';

/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = config_tags_relation */
/**************************************************/
テーブル `config_tags_relation` を作成します (
 `id` bigint(20) NOT NULL コメント 'id',
 `tag_name` varchar(128) NOT NULL COMMENT 'tag_name',
 `tag_type` varchar(64) デフォルト NULL コメント 'tag_type',
 `data_id` varchar(255) NOT NULL コメント 'data_id',
 `group_id` varchar(128) NOT NULL コメント 'group_id',
 `tenant_id` varchar(128) デフォルト '' COMMENT 'tenant_id',
 `nid` bigint(20) NOT NULL AUTO_INCREMENT,
 主キー (`nid`)、
 ユニークキー `uk_configtagrelation_configidtag` (`id`,`tag_name`,`tag_type`)、
 キー `idx_tenant_id` (`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_tag_relation';

/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = group_capacity */
/**************************************************/
テーブル「group_capacity」を作成します(
 `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主キーID',
 `group_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'グループID、空の文字列はクラスタ全体を示します',
 `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'クォータ、0はデフォルト値を使用することを意味します',
 `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'usage',
 `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '1つの設定サイズの上限(バイト単位)。0はデフォルト値を使用することを意味します',
 `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '集約サブ構成の最大数。0はデフォルト値を使用することを意味します',
 `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '単一集約データのサブ構成サイズの上限(バイト単位)。0はデフォルト値を使用することを意味します',
 `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '変更履歴の最大数',
 `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '作成時刻',
 `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '変更時刻',
 主キー (`id`)、
 ユニークキー `uk_group_id` (`group_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='クラスターおよびグループ容量情報テーブル';

/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = his_config_info */
/**************************************************/
テーブル `his_config_info` を作成します (
 `id` bigint(64) 符号なし NOT NULL,
 `nid` bigint(20) 符号なし NOT NULL AUTO_INCREMENT,
 `data_id` varchar(255) NOT NULL,
 `group_id` varchar(128) NOT NULL,
 `app_name` varchar(128) デフォルト NULL コメント 'app_name',
 `content` ロングテキスト NOT NULL、
 `md5` varchar(32) デフォルト NULL,
 `gmt_create` 日時 NOT NULL デフォルト '2010-05-05 00:00:00',
 `gmt_modified` 日時 NOT NULL デフォルト '2010-05-05 00:00:00',
 `src_user` テキスト、
 `src_ip` varchar(20) デフォルト NULL,
 `op_type` char(10) デフォルト NULL,
 `tenant_id` varchar(128) DEFAULT '' COMMENT 'テナントフィールド',
 主キー (`nid`)、
 キー `idx_gmt_create` (`gmt​​_create`)、
 キー `idx_gmt_modified` (`gmt​​_modified`)、
 キー `idx_did` (`data_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='マルチテナント変換';


/**************************************************/
/* データベースのフルネーム = nacos_config */
/* テーブル名 = tenant_capacity */
/**************************************************/
テーブル `tenant_capacity` を作成します (
 `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主キーID',
 `tenant_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'テナントID',
 `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'クォータ、0はデフォルト値を使用することを意味します',
 `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'usage',
 `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '1つの設定サイズの上限(バイト単位)。0はデフォルト値を使用することを意味します',
 `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '集約サブ構成の最大数',
 `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '単一集約データのサブ構成サイズの上限(バイト単位)。0はデフォルト値を使用することを意味します',
 `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '変更履歴の最大数',
 `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '作成時刻',
 `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '変更時刻',
 主キー (`id`)、
 ユニークキー `uk_tenant_id` (`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='テナント容量情報テーブル';


テーブル `tenant_info` を作成します (
 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
 `kp` varchar(128) NOT NULL コメント 'kp',
 `tenant_id` varchar(128) デフォルト '' COMMENT 'tenant_id',
 `tenant_name` varchar(128) デフォルト '' COMMENT 'tenant_name',
 `tenant_desc` varchar(256) デフォルト NULL コメント 'tenant_desc',
 `create_source` varchar(32) デフォルト NULL コメント 'create_source',
 `gmt_create` bigint(20) NOT NULL COMMENT '作成時刻',
 `gmt_modified` bigint(20) NOT NULL COMMENT '変更時刻',
 主キー (`id`)、
 ユニークキー `uk_tenant_info_kptenantid` (`kp`,`tenant_id`)、
 キー `idx_tenant_id` (`tenant_id`)
) ENGINE=InnoDB デフォルト CHARSET=utf8 COLLATE=utf8_bin COMMENT='tenant_info';

CREATE TABLE ユーザー (
  ユーザー名varchar(50) NOT NULL主キー、
  パスワードvarchar(500) NOT NULL、
  有効 ブール値 NOT NULL
);

CREATE TABLEロール(
  ユーザー名varchar(50) NOT NULL、
  ロール varchar(50) NOT NULL
);

INSERT INTO users (ユーザー名、パスワード、有効) VALUES ('nacos'、'$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu'、TRUE);

ロール(ユーザー名、ロール)に VALUES('nacos'、'ROLE_ADMIN')を INSERT INTO します。

2. 次のdockerコマンドを実行します

docker run -d \
-e PREFER_HOST_MODE=ip \
-e MODE=スタンドアロン \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_MASTER_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=mysql ユーザー名\
-e MYSQL_SERVICE_PASSWORD=mysql パスワード\
-e MYSQL_SERVICE_HOST=mysqlのIP \
-e MYSQL_SERVICE_DB_NAME=リンクのデータベース名\
-v サーバーがログファイルを保存するアドレス: /home/nacos/logs \
-p 8848:8848 \
--name ナコス \
--restart=常に\
nacos/nacos-server:1.3.0

例:

docker run -d \
-e PREFER_HOST_MODE=ip \
-e MODE=スタンドアロン \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_MASTER_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=ルート\
-e MYSQL_SERVICE_PASSWORD=123456 \
-e MYSQL_SERVICE_HOST=172.17.0.1 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e SERVER_SERVLET_CONTEXTPATH=/ \
-v /usr/local/config/nacos/logs:/home/nacos/logs \
-p 8848:8848 \
--name ナコス \
--restart=常に\
nacos/nacos-server:1.3.0

成功例:

インストールが完了しました〜

docker で構築した nacos1.3.0 の実装に関するこの記事はこれで終わりです。docker で nacos を構築することに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • docker に nacos をインストールしてデータベースを構成する詳細なチュートリアル
  • Nacos docker スタンドアロンモードのデプロイメントの実装プロセスの詳細な説明

<<:  HTML ウェブページの基本コンポーネントの概要

>>:  VUE ユニアプリカスタムコンポーネントについての簡単な説明

推薦する

MySQLサービスの自動停止の解決策

この記事では主に、MySQL サービスの自動停止の解決策を紹介し、参考と学習のために共有します。一緒...

Docker コンテナのネットワーク設定によく使われるコマンドの詳しい説明

基本的なネットワーク構成Docker はイメージに基づいて複数のコンテナを「開く」ことができ、各コン...

IframeとFRAMEの違いの分析

1. Iframe タグの使用<br />Iframe については、「忘れられた隅」に放...

JavaScript の async と await のシンプルで詳細な学習

目次1. はじめに2. 詳しい説明2.1、非同期2.1.1. 関数はPromise以外のオブジェクト...

CSS scroll-snap スクロールイベント停止と要素位置検出の実装

1. スクロールスナップはフロントエンド開発者にとって必須のスキルですCSS スクロール スナップは...

NodeJS は画像テキスト分割を実現します

この記事では、画像テキストセグメンテーションを実装するためのNodeJSの具体的なコードを参考までに...

nginxの基礎を学ぶ

目次1. nginx とは何ですか? 2. nginx で何ができるのか? 2.1 フォワードプロキ...

ウェブサイト標準の検証方法を通じてFlashページを共有する方法

1. 埋め込みは違法です<embed> タグは Netscape のプライベート タグで...

異なるインデックスを更新してMySQLのデッドロックルーチンを解決する

前回の記事では、ソース コードを使用してロック関連の情報をデバッグする方法を紹介しました。ここでは、...

MySQL が暗黙のデフォルト値を処理する方法

何人かの学生は、マスターとスレーブの間の不一致の問題に遭遇したと述べました。一般的な状況としては、m...

Nodejsはgitee実装コードに自動的に同期するドキュメント同期ツールを作成します

本来の意図このツールを作った理由は、コンピューターを使用しているときにいつでも毎日の仕事や生活を記録...

インデックスを使用して数千万のデータを持つ MySQL のクエリ速度を最適化する

1. インデックスの役割一般的に言えば、インデックスは本の目次に相当します。条件に基づいてクエリを実...

mini-vueレンダリングのシンプルな実装

目次序文ターゲット最初のステップ:ステップ2:ステップ3:ステップ4:要約する序文現在主流のフレーム...

MySQL に 1,000 万件のレコードを素早く挿入する方法

面接で「MySQL に 1,000 万件のレコードをすばやく挿入するにはどうすればよいか」という質問...

CSS3入力ボックスの実装コードはGoogleログインのアニメーション効果に似ています

CSS3を使用して、Googleログインページと同様の入力ボックスをアニメーション化します。効果1 ...