社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

Apisix 使用docker快速搭建步骤

dotNET跨平台 • 1 年前 • 299 次点击  

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

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


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




1、拉取etcd镜像

docker pull bitnami/etcd:latest



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


netstat -tlnp | grep 2379netstat -tlnp | grep 2380

3、生成etcd容器服务实例

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镜像

docker pull apache/apisix:3.2.0-centos

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


netstat -tlnp | grep 9080netstat -tlnp | grep 9443netstat -tlnp | grep 9181netstat -tlnp | grep 9182netstat -tlnp | grep 9091netstat -tlnp | grep 9092

6、生成apisix容器服务实例

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镜像

docker pull apache/apisix-dashboard:3.0.1-centos

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

netstat -tlnp | grep 9000

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

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


docker pull prom/prometheus:v2.25.0netstat -tlnp | grep 9090docker 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


docker pull grafana/grafana:7.3.7netstat -tlnp | grep 3000docker 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 命令中,加入用户名密码配置,如:

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页面,都会跳转到登录页。


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/165184
 
299 次点击