目录

统一网关GateWay

 搭建网关服务的步骤

1、引入依赖

2、编写路由配置及nacos地址

路由断言工厂Route Oredicate Factory 

路由过滤器配置

 全局过滤器GlobalFilter

过滤器执行顺序

跨域问题处理 

 Docker

 ​编辑

Docker与虚拟机 

镜像和容器

Docker的安装

启动docker

配置镜像加速

Docker基本操作

Docker基本命令 

数据卷 

操作数据卷

 挂载数据卷

Dockerfile自定义镜像

 Dockerfile

 DockerCompose

CentOS7安装DockerCompose

2.2.修改文件权限

2.3.Base自动补全命令:

 Docker镜像仓库

3.Docker镜像仓库

3.1.简化版镜像仓库

3.2.带有图形化界面版本

3.3.配置Docker信任地址

统一网关GateWay

 

 

 搭建网关服务的步骤

1、引入依赖

com.alibaba.cloud

spring-cloud-starter-alibaba-nacos-discovery

org.springframework.cloud

spring-cloud-starter-gateway

2、编写路由配置及nacos地址

server:

port: 10010

spring:

application:

name: gateway

cloud:

nacos:

server-addr: localhost:8848 #nacos地址

gateway:

routes:

- id: user-service #路由标识,必须唯一

uri: lb://userservice #路由的目标地址

predicates: #路由断言,判断请求是否符合规则

- Path=/user/** #路劲断言,判断路劲是否以/user开头

- id: order-service

uri: lb://orderservice

predicates:

- Path=/order/**

路由断言工厂Route Oredicate Factory 

 

 

 

路由过滤器配置

 

 全局过滤器GlobalFilter

//越小优先级越高

//@Order(-1)

@Component

public class AuthorizeFilter implements GlobalFilter, Ordered {

@Override

public Mono filter(ServerWebExchange exchange, GatewayFilterChain chain) {

//1、获取请求参数

ServerHttpRequest request = exchange.getRequest();

MultiValueMap params = request.getQueryParams();

//2、获取参数中的authorization 参数

String auth = params.getFirst("authorization");

//3、判断参数值是否等于admin

if ( "admin".equals(auth) ){

//4、是,放行

return chain.filter(exchange);

}

//5、否,拦截

//5.1设置状态码

exchange.getResponse().setStatusCode(HttpStatus.UNAUTHORIZED);

//5.2拦截请求

return exchange.getResponse().setComplete();

}

@Override

public int getOrder() {

return -1;

}

}

 

 

过滤器执行顺序

跨域问题处理 

 

 Docker

 

 

 

 

Docker与虚拟机 

 

 

镜像和容器

 

 

Docker的安装

 首先需要大家虚拟机联网,安装yum工具

yum install -y yum-utils \

device-mapper-persistent-data \

lvm2 --skip-broken

然后更新本地镜像源:

# 设置docker镜像源

yum-config-manager \

--add-repo \

https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast

然后输入命令:

yum install -y docker-ce

启动docker

# 关闭

systemctl stop firewalld

# 禁止开机启动防火墙

systemctl disable firewalld

通过命令启动docker:

systemctl start docker # 启动docker服务

systemctl stop docker # 停止docker服务

systemctl restart docker # 重启docker服务

然后输入命令,可以查看docker版本:

docker -v

配置镜像加速

docker官方镜像仓库网速较差,我们需要设置国内镜像服务:

参考阿里云的镜像加速文档:阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台

1. 安装/升级Docker客户端

推荐安装1.10.0以上版本的Docker客户端,参考文档docker-ce

2. 配置镜像加速器

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": ["https://zhlulsyn.mirror.aliyuncs.com"]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

Docker基本操作

 

Docker基本命令 

 

 

 

 

 

 ​​​​​​​

 

 

 

 

 

 

 

 

数据卷 

 

 

操作数据卷

 

 

 

 

 挂载数据卷

 

 

 

 

 

 

 

Dockerfile自定义镜像

 

 

 Dockerfile

 

 

 

 

 DockerCompose

 

 

CentOS7安装DockerCompose

Linux下需要通过命令下载:

# 安装

curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

如果下载速度较慢,或者下载失败,可以使用课前资料提供的docker-compose文件:上传到/usr/local/bin/目录也可以。

2.2.修改文件权限

修改文件权限:

# 修改权限

chmod +x /usr/local/bin/docker-compose

2.3.Base自动补全命令:

# 补全命令

curl -L https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose

如果这里出现错误,需要修改自己的hosts文件:

echo "199.232.68.133 raw.githubusercontent.com" >> /etc/hosts

 

 Docker镜像仓库

 

3.Docker镜像仓库

搭建镜像仓库可以基于Docker官方提供的DockerRegistry来实现。

官网地址:https://hub.docker.com/_/registry

3.1.简化版镜像仓库

Docker官方的Docker Registry是一个基础版本的Docker镜像仓库,具备仓库管理的完整功能,但是没有图形化界面。

搭建方式比较简单,命令如下:

docker run -d \

--restart=always \

--name registry \

-p 5000:5000 \

-v registry-data:/var/lib/registry \

registry

命令中挂载了一个数据卷registry-data到容器内的/var/lib/registry 目录,这是私有镜像库存放数据的目录。

访问http://YourIp:5000/v2/_catalog 可以查看当前私有镜像服务中包含的镜像

3.2.带有图形化界面版本

使用DockerCompose部署带有图象界面的DockerRegistry,命令如下:

version: '3.0'

services:

registry:

image: registry

volumes:

- ./registry-data:/var/lib/registry

ui:

image: joxit/docker-registry-ui:static

ports:

- 8080:80

environment:

- REGISTRY_TITLE=传智教育私有仓库

- REGISTRY_URL=http://registry:5000

depends_on:

- registry

3.3.配置Docker信任地址

我们的私服采用的是http协议,默认不被Docker信任,所以需要做一个配置:

# 打开要修改的文件

vi /etc/docker/daemon.json

# 添加内容:

"insecure-registries":["http://192.168.150.101:8080"]

# 重加载

systemctl daemon-reload

# 重启docker

systemctl restart docker

 

 

参考阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: