前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Apisix 使用docker快速搭建步骤

Apisix 使用docker快速搭建步骤

作者头像
老张的哲学
发布2023-12-04 19:57:41
6610
发布2023-12-04 19:57:41
举报
文章被收录于专栏:NetCore 从壹开始NetCore 从壹开始

本文是一个Apisix的快速搭建文章记录,如果想要了解更多Apisix的相关概念,请查看官网进行学习。https://apisix.apache.org/

本次安装,Linux服务器涉及的相关端口,尽量确保这些端口都没有被占用

本次安装,涉及到的dockers镜像

1、拉取etcd镜像

代码语言:javascript
复制
docker pull bitnami/etcd:latest

2、查看etcd相关端口是否被占用

代码语言:javascript
复制
netstat -tlnp | grep 2379
netstat -tlnp | grep 2380

3、生成etcd容器服务实例

代码语言:javascript
复制
docker run -d -it --name etcd-server  
--restart=always -p 2379:2379 -p 2380:2380 
--env ALLOW_NONE_AUTHENTICATION=yes bitnami/etcd:latest

4、拉取apisix镜像

代码语言:javascript
复制
docker pull apache/apisix:3.2.0-centos

5、查看apisix相关端口是否被占用

代码语言:javascript
复制
netstat -tlnp | grep 9080
netstat -tlnp | grep 9443
netstat -tlnp | grep 9181
netstat -tlnp | grep 9182
netstat -tlnp | grep 9091
netstat -tlnp | grep 9092

6、生成apisix容器服务实例

代码语言:javascript
复制
docker run -d --name apisix-server --restart=always 
 --network host 
 -v /home/apisix/config.yaml:/usr/local/apisix/conf/config.yaml:ro 
 -v /home/apisix/apisix_log:/usr/local/apisix/logs 
 -p 9080:9080 -p 9443:9443 -p 9181:9181 -p 9182:9182 
 -d apache/apisix:3.2.0-centos

可以挂载配置文件,

注意其中有etcd和prometheus的相关配置

https://github.com/apache/apisix-docker/blob/master/example/apisix_conf/config.yaml

7、拉取apisix-dashboard镜像

代码语言:javascript
复制
docker pull apache/apisix-dashboard:3.0.1-centos

8、查看apisix-dashboard相关端口是否被占用

代码语言:javascript
复制
netstat -tlnp | grep 9000

9、生成apisix-dashboard容器服务实例

代码语言:javascript
复制
docker run -d -p 9000:9000 --restart=always 
--network host 
-v /home/apisix/dashboard_conf/conf.yaml:/usr/local/apisix-dashboard/conf/conf.yaml 
--name apisix-dashboard 
apache/apisix-dashboard:3.0.1-centos

可以挂载文件 , 账号密码在自定义的挂载文件中

https://github.com/apache/apisix-docker/blob/master/example/dashboard_conf/conf.yaml

10、访问9000端口查看后台管理页面

完成

11、Prometheus

代码语言:javascript
复制
docker pull prom/prometheus:v2.25.0
netstat -tlnp | grep 9090
docker run -d --name prometheus --restart=always 
--network host 
-v /home/apisix/prometheus_conf/prometheus.yml:/etc/prometheus/prometheus.yml 
-p 9090:9090 -d prom/prometheus:v2.25.0

注意其中有关于apisix的job信息

12、grafana

代码语言:javascript
复制
docker pull grafana/grafana:7.3.7
netstat -tlnp | grep 3000
docker run -d --name grafana --restart=always 
--network host 
-v /home/apisix/grafana_conf/provisioning:/etc/grafana/provisioning -v /dataB/soft/apisix/grafana_conf/dashboards:/var/lib/grafana/dashboards 
-v /home/apisix/grafana_conf/config/grafana.ini:/etc/grafana/grafana.ini 
-p 3000:3000 -d grafana/grafana:7.3.7

默认账号密码在挂载的ini文件中,默认admin/admin

这里挂载了三个文件

分别是dashboards中的看板json、ini的grafana配置文件

13、grafana开启认证访问

首先将挂载的grafana.ini配置文件中的匿名访问改成false,取消匿名

然后在启动的时候,可以在docker run 命令中,加入用户名密码配置,如:

代码语言:javascript
复制
docker run -d --name grafana --restart=always --network host 
-e GF_SECURITY_ADMIN_USER=xxxxx
-e GF_SECURITY_ADMIN_PASSWORD=xxxx 
-v /home/apisix/grafana_conf/provisioning:/etc/grafana/provisioning 
-v /home/apisix/grafana_conf/dashboards:/var/lib/grafana/dashboards 
-v /home/apisix/grafana_conf/config/grafana.ini:/etc/grafana/grafana.ini 
-p 3000:3000 -d grafana/grafana:7.3.7

这样访问任意grafana页面,都会跳转到登录页。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-12-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 NetCore 从壹开始 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档