Docker composer搭建Spring Cloud Alibaba 运行环境(二)

 
前言
 
“ Spring Cloud Alibaba要用到的组件很多,注册中心nacos, 限流sentinel, 数据库,网关等等。由于用到的组件相对较多,部署会很繁琐,最关键的是没有资源服务器,所以在开发过程中我会逐渐将一些组件使用docker-compose部署。”
 

 

 
 
01
— 
 
环境准备

 

 

 

我手上有一台macbook,这次先用mac部署,有机会再写一个ubuntu的,基本差不多。

先晒出mackbook信息,不是高配,硬件配置和这差不多的应该都没问题。

 
 
 
 

 

第一部安装docker-toolbox, 阿里云上有个镜像。
 
下载,安装。

 

 
 

 

 
 
安装好以后配置一下硬件信息:
 
这个时候可以试一下,是否安装好了,terminal试一下docker version:
➜  ~ docker version
Client: Docker Engine - Community
 Cloud integration  0.1.18
 Version:           19.03.13
 API version:       1.40
 Go version:        go1.13.15
 Git commit:        4484c46d9d
 Built:             Wed Sep 16 16:58:31 2020
 OS/Arch:           darwin/amd64
 Experimental:      falseServer: Docker Engine - Community
 Engine:
  Version:          19.03.13
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       4484c46d9d
  Built:            Wed Sep 16 17:07:04 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.3.7
  GitCommit:        8fba4e9a7d01810a393d5d25a3621dc101981175
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

  

docker-compose version:
 
➜  ~    docker-compose -version
docker-compose version 1.27.4, build 40524192

 

 
正常情况下,我们的环境就全部准备好了,是不是很简单。
当然我们国内的环境(肉身FQ或者有高速梯子跳过这步)是需要配置一个国内的docker加速器,国内的网速去docker hub下载镜像那得凉凉了。
 
配置阿里云加速方法如下:
首先申请自己的阿里云私有镜像:

 

 
2.进入【控制台】-【镜像仓库】-【镜像中心】-【镜像加速器】
如果找不到菜单就直接搜【镜像仓库】会要求输入密码,输入即可,然后进入【镜像中心】-【镜像加速器】

 

获得自己的加速地址后:
 
{
  "features": {
    "buildkit": true
  },
  "experimental": false,
  "registry-mirrors": [
    "https://xxxxxx.mirror.aliyuncs.com"
  ]
}

 

 

重启服务。
 

 

 
 
用docker info命令查看是否配置成功,看下你的加速地址表示成功:
 Registry Mirrors:
 Live Restore Enabled: false

 

 
 

 

 
 

 

Docker toolbox安装成功!!
 
 
02 
 
docker-compse部署Mysql

 

 
 
创建docker文件夹,用于存放相应文件信息,创建docker-compose.yml文件。文件目录如下:
 
-rw-r--r--  1 xx  staff   1.1K 10 27 22:00 docker-compose.yml
drwxr-xr-x  3 xx  staff    96B 10 20 15:22 mysql

 

 

 
 

 

编写docker-compose.yml文件如下:
version: "3"
services:
  mysql:
    container_name: mysql
    image: mysql:5.7
    environment:
      - MYSQL_ROOT_PASSWORD=123456
    volumes:
      - /Users/xxxx/docker/mysql/data:/var/lib/mysql
    ports:
      - "3306:3306"
    restart: always

 

 
 
 
启动mysql镜像,输入命令:docker-compose up -d mysql, 运行如下:
➜  docker docker-compose up -d mysql
Creating network "docker_default" with the default driver
Pulling mysql (mysql:5.7)...
5.7: Pulling from library/mysql
bb79b6b2107f: Pull complete
49e22f6fb9f7: Pull complete
842b1255668c: Pull complete
9f48d1f43000: Pull complete
c693f0615bce: Pull complete
8a621b9dbed2: Pull complete
0807d32aef13: Pull complete
6d2fc69dfa35: Pull complete
56153548dd2c: Extracting [=======================================>           ]  84.67MB/108.3MB

 

 

 
 
用docker-compose ps -a 命令查看是否启动成功,看到如下信息说明成功:
➜  docker docker-compose ps -a
        Name                      Command                State                   Ports              
----------------------------------------------------------------------------------------------------
mysql                  docker-entrypoint.sh mysqld      Up         
0.0.0.0:3306->3306/tcp, 33060/tcp

 

 
 
 

 

Mysql安装成功!!
 

 

 
 
03

 

docker-compse部署Nacos

 

 
 
去github把nacos  的SQL文件下载下来,导入数据库中。
用工具导到我们刚搭建好的mysql中:(用本机ip, root/123456, 端口3306)

 

 
 
在docker-compse.yml的后面中加入以下配置:
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
      - MYSQL_MASTER_SERVICE_PORT=3306
      - MYSQL_MASTER_SERVICE_USER=root
      - MYSQL_MASTER_SERVICE_PASSWORD=123456
    volumes:
      - /Users/xxx/docker/nacos/logs:/home/nacos/logs
    ports:
      - "8848:8848"
    depends_on:
      - mysql
    restart: always

 

 

写好了注意在相应的volumes创建好相应的文件夹
 
docker-compose up -d nacos

 

 

启动nacos
 
启动完成后通过 http://yourip:8848/nacos/#/login 用nacos/nacos登陆
Nacos安装成功!!
 
04
docker-compse部署sentinel

 

 
 
在docker-compse.yml的后面中加入以下配置:
 sentinel:
    image: bladex/sentinel-dashboard:latest
    container_name: sentinel
    ports:
      - "8858:8858"
    restart: always

 

 

运行命令:
➜  docker docker-compose up -d sentinel

 

 

 
 
启动成功后,http://yourip:8858/  用户名密码sentinel/sentinel登陆

 

 
 
Sentinel安装成功, 至此前期所需要的组件都安装成功, 万里长征迈出第一步,下期我们继续。
 
 
posted @ 2020-10-29 22:53  老包子说架构  阅读(923)  评论(0编辑  收藏  举报