APISIX系列

您所在的位置:网站首页 docker安装xray APISIX系列

APISIX系列

2023-03-03 06:47| 来源: 网络整理| 查看: 265

官方仓库:​​https://github.com/iresty/docker-apisix​​

官方仓库

拉取

git clone [email protected]:iresty/docker-apisix.git

安装 etcd 服务

1、拉去etcd镜像

docker pull bitnami/etcd:3.3.13-r80

2、启动etcd服务器实例

docker run -it --name etcd-server \-v /e/github/docker-apisix/example/etcd_conf/etcd.conf.yml:/opt/bitnami/etcd/conf/etcd.conf.yml \-p 2379:2379 \-p 2380:2380 \--env ALLOW_NONE_AUTHENTICATION=yes \-d bitnami/etcd:3.3.13-r80

 Windows 环境执行命令:

docker run -it --name etcd-server -v /e/github/docker-apisix/example/etcd_conf/etcd.conf.yml:/opt/bitnami/etcd/conf/etcd.conf.yml -p 2379:2379 -p 2380:2380 --env ALLOW_NONE_AUTHENTICATION=yes -d bitnami/etcd:3.3.13-r80

3、测试是否安装成功

进入etcd实例

docker exec -it etcd-server /bin/sh -c "[ -e /bin/bash ] && /bin/bash || /bin/sh"I have no name!@1d05cea9f08c:/opt/bitnami/etcd$

测试

$ etcdctl put key-test "Hi Tinywan!" // 设置OKI have no name!@1d05cea9f08c:/$ etcdctl get key-test // 获取key-testHi Tinywan!I have no name!@1d05cea9f08c:/$ etcdctl del key-test // 删除1I have no name!@1d05cea9f08c:/$ etcdctl get key-test // 删除I have no name!@1d05cea9f08c:/$

4、进入容器查看是否已经开启v2协议

> docker exec -it etcd-server bash$ etcd --help |grep enable-v2usage: etcd [flags] start an etcd server

etcd --version show the version of etcd

etcd -h | --help show the help information about etcd

etcd --config-file path to the server configuration file

etcd gateway run the stateless pass-through etcd TCP connection forwarding proxy

etcd grpc-proxy run the stateless etcd v3 gRPC L7 reverse proxy

--enable-v2 'true' --experimental-enable-v2v3 ''

--enable-v2 'true' 表示已经开启v2协议。

原因:APISIX 目前仅支持 etcd 的 v2 协议存储,但最新版的 etcd (3.4 开始)已经默认关闭 v2 协议。 需要在启动参数中添加 --enable-v2=true,才能启用 v2 协议。  

4、启动etcd客户端实例

$ docker run -it --rm \ --network app-tier \ --env ALLOW_NONE_AUTHENTICATION=yes \ bitnami/etcd:latest etcdctl --endpoints http://etcd-server:2379 set /message Hello

Windows 环境

docker run -it --rm --network app-tier --env ALLOW_NONE_AUTHENTICATION=yes bitnami/etcd:3.3.13-r80 etcdctl --endpoints http://etcd-server:2379 set /message Hello

安装 apisix 服务

使用官方镜像可能会超时,提示错误:request canceled (Client.Timeout exceeded while awaiting headers)

1、拉去镜像

docker pull registry.cn-beijing.aliyuncs.com/tinywan/apisix:alpine

2、修改配置文件

config.yaml

etcd: host: "http://127.0.0.1:2379" # etcd address

修改为本机电脑的内网IP,windows 查看本地内网IP。打开命令行,输入 ipconfig

APISIX系列 | 使用 docker-apisix 安装APISIX服务_github

 修改后

etcd: host: "http://192.168.1.3:2379" # etcd address

2、运行服务

> docker run --name tinywan-api-gateway \-v /e/GitHub/docker-apisix/example/apisix_conf/config.yaml:/usr/local/apisix/conf/config.yaml \-v /e/GitHub/docker-apisix/example/apisix_log:/usr/local/apisix/logs \-p 8080:9080 \-p 8083:9443 registry.cn-beijing.aliyuncs.com/tinywan/apisix:alpine

这里挂在配置文件和日志目录都是使用的绝对路径

windows 文件目录为

E:\GitHub\docker-apisix

 则挂在目录地址为

/e/GitHub/docker-apisix

3、查看服务是佛已经启动

> docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7747e9a4bcd6 registry.cn-beijing.aliyuncs.com/tinywan/apisix:alpine "sh -c '/usr/bin/api…" 14 seconds ago Up 13 seconds 0.0.0.0:8080->9080/tcp, 0.0.0.0:8083->9443/tcp tinywan-api-gateway1d05cea9f08c bitnami/etcd:3.3.13-r80 "/entrypoint.sh etcd" 29 minutes ago Up 29 minutes 0.0.0.0:2379-2380->2379-2380/tcp etcd-server

控制台

APISIX 内置了 dashboard,使用浏览器打开 ​​http://127.0.0.1:8080/apisix/dashboard/​​ 即可使用, 不用填写用户名和密码,直接登录  

APISIX系列 | 使用 docker-apisix 安装APISIX服务_docker_02

 直接点击登录

APISIX系列 | 使用 docker-apisix 安装APISIX服务_github_03

 恭喜你安装成功



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3