docker中的zuul服務連接docker中的mysql數據庫動態配置路由信息

1.建立zuul_route路由規則表

 

/*

SQLyog Ultimate v11.11 (64 bit)

MySQL - 5.5.19 : Database - test

*********************************************************************

*/

/*!40101 SET NAMES utf8 */;

 

/*!40101 SET SQL_MODE=''*/;

 

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;

/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;

/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;

/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

CREATE DATABASE /*!32312 IF NOT EXISTS*/`test` /*!40100 DEFAULT CHARACTER SET utf8 */;

 

USE `test`;

 

/*Table structure for table `zuul_route` */

 

DROP TABLE IF EXISTS `zuul_route`;

 

CREATE TABLE `zuul_route` (

`id` int(11) NOT NULL,

`path` varchar(255) NOT NULL,

`service_id` varchar(50) DEFAULT NULL,

`url` varchar(255) DEFAULT NULL,

`strip_prefix` tinyint(1) DEFAULT '1',

`retryable` tinyint(1) DEFAULT '0',

`enabled` tinyint(1) NOT NULL DEFAULT '1',

`description` varchar(255) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

/*Data for the table `zuul_route` */

 

insert into `zuul_route`(`id`,`path`,`service_id`,`url`,`strip_prefix`,`retryable`,`enabled`,`description`) values (1,'/baidu/**',NULL,'http://www.baidu.com',1,0,1,'重定向百度');

insert into `zuul_route`(`id`,`path`,`service_id`,`url`,`strip_prefix`,`retryable`,`enabled`,`description`) values (2,'/client/**',NULL,'http://localhost:7070',1,0,1,'url');

insert into `zuul_route`(`id`,`path`,`service_id`,`url`,`strip_prefix`,`retryable`,`enabled`,`description`) values (3,'/client-a/**','client-a',NULL,1,0,1,'serviceId');

 

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;

/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;

/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;

/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

2.配置 dynamic-zuul-server連接mysql數據庫

spring:

application:

name: dynamic-zuul-server

datasource:

url: jdbc:mysql://mysql:3306/test?useUnicode=true&characterEncoding=utf-8

driver-class-name: com.mysql.jdbc.Driver

username: root

password: 123456

server:

port: 5558

eureka:

client:

serviceUrl:

defaultZone: http://${eureka.host:192.168.1.4}:${eureka.port:8761}/eureka/

instance:

prefer-ip-address: true

 

ribbon:

eureka:

enabled: true

restimeout: 60000

connecttimeout: 600000

hystrix:

command:

default:

execution:

isolation:

thread:

timeoutinmilliseconds: 60000

3.創建dynamic-zuul-server鏡像

mvn clean package -Dmaven.test.skip=true

mvn clean package -Dmaven.test.skip=true docker:build

查看構建是否成功

4.運行dynamic-zuul-server鏡像

docker run --hostname=master --name=dynamic-zuul -p 5558:5558 --link mysql:mysql -d dynamic-zuul-server:0.0.1-SNAPSHOT

注意 在運行時要指定--link中的mysql

程序代碼爲《重新定義springcloud》中的ch8-4

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章