Docker-12:Docker安装Apisix

简介: 通过Docker安装APISIX

1. 背景

Docker

APISIX

Apisix 社区我关注了很久,大概从2020年的时候,我从 Apache 官网上了解到这个项目,那时候 Apisix 也孵化的差不多了,期间也在各种平台上做了很多推广。它给我最直观印象就是高性能网关,可以替代我们现在微服务网关/或者负载均衡的组件。

关于网关,可以参看此前文章,[[如何选择和设计微服务网关]] 这里仅说明安装步骤,因为在某个演示项目技术选型用到 Apisix 所以在开发环境部署一套服务,为后续服务迁移做技术预研究。

2. 环境准备

Apisix 官网上也提供了一揽子安装命令: docker pull apache/apisix ,也安装过,但是为了了解 Apisix 一些结构和细节,选择了使用 docker-conpose 这种方式安装,顺带着将官方提供样例中的文件夹浏览一遍,做到心中有数。

2.1. 容器环境

  • Docker
  • docker-compse

以上环境自行准备,此处不做赘述。

2.2. Clone项目

样例

目录名称 描述 用途
apisix_conf 配置文件路径 配置apisix监听路径、后台默认账号及密码、ETCD
apisix_log 日志路径
dashboard_conf 可视化配置路径 设置登陆账号以及密码、设置产生日志路径、设置可视化访问的端口、设置默认开启的插件
etcd_conf ETCD配置路径 配置成员、集群、代理、安全设置信息
etcd_data 数据存放路径
mkcert 相关证书存放路径
upstream nginx中Web服务的配置问存放路径
docker-compose.yml Docker-compose相关配置 容器相关配置都放到此路径下

2.3. 上传示例

因为我在本地环境 Clone 的项目,所以要将 example 路径压缩上传到 Linux 服务器端。

  • 上传到服务器,解压 example 文件夹,我服务器演示路径为: /data/docker-compose/apisix ,以下只要未做特殊说明,操作路径皆为此。
  • 设置目录权限

chmod -R 777 /data/docker-compose/apisix/

这一步比较简单,就略过。

3. 修改配置文件

如果独立安装 ETCD 的,在 Apisix 依赖于 ETCD 配置修改 apisix_confdashboard_conf 目录下 config.yaml ,修改连接 ETCD 地址,修改为 ETCD 所在 IP地址。 具体地址参看 [[Docker-11:Docekr安装Etcd]] 章节

20220820232038


etcd:
  host:                           
    - "http://192.168.147.128:2379"     
  prefix: "/apisix"               
  timeout: 30

4. 启动

下来启动容器,执行 docker-compose up ,如果想直接后台运行, 使用 docker-compose up -d


docker-compose up

首次启动容器,等待时间有点久,需要构建所依赖的环境,耐心等待即可!

图例1

图例2

5. 验证服务

5.1. 查看容器状态


docker-compose ps

20220820234222

5.2. 访问可视化界面

在浏览器打开地址 http://192.168.147.128:9000/ ,用户名密码在 dashboard_conf/conf.yaml 配置文件中,默认登录的用户名 adminuser ,密码与用户名相同。

目录
相关文章
|
1天前
|
消息中间件 Docker 容器
消息中间件RabbitMQ---Docker安装RabbitMQ、以及RabbitMQ的基本使用【二】
这篇文章提供了RabbitMQ的安装和基本使用教程,包括如何使用Docker拉取RabbitMQ镜像、创建容器、通过浏览器访问管理界面,以及如何创建交换机、队列、绑定和使用direct、fanout和topic三种类型的交换器进行消息发布和接收的测试。
消息中间件RabbitMQ---Docker安装RabbitMQ、以及RabbitMQ的基本使用【二】
|
1天前
|
关系型数据库 MySQL Java
腾讯云服务器的使用、服务器中使用Docker安装常见的软件、如何将一个项目发布到服务器
这篇文章介绍了在腾讯云服务器上使用Docker安装常见软件的过程,包括安装MySQL、Redis和Tomcat,并提供了解决连接问题的方法。同时,还涉及了服务器中安装JDK 1.8的步骤和如何将项目打包部署到服务器上的指导,包括注意事项和操作提示。
腾讯云服务器的使用、服务器中使用Docker安装常见的软件、如何将一个项目发布到服务器
|
1天前
|
应用服务中间件 Docker 容器
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
这篇文章介绍了在Docker中安装Tomcat的过程,包括搜索Tomcat镜像、拉取镜像、目录挂载的准备、创建并挂载容器,以及如何进入容器和进行测试。文中还说明了如何将WAR包部署到Tomcat服务器并访问部署的应用。
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
|
1天前
|
应用服务中间件 Linux nginx
Linux虚拟机磁盘扩容、Docker容器磁盘满的问题、Docker安装nginx
这篇文章讨论了Linux虚拟机磁盘扩容的方法,包括外部配置、具体扩容步骤和扩容后的效果验证。同时,文章还涉及了Docker容器磁盘满的问题及其解决方法,如删除不必要的镜像和容器,以及调整Docker的安装路径。此外,还提到了意外情况的处理,例如误删除停止的容器后的应对措施。最后,文章还提供了使用Docker安装nginx的步骤和成功访问的截图。
Linux虚拟机磁盘扩容、Docker容器磁盘满的问题、Docker安装nginx
|
1天前
|
数据可视化 Docker 容器
一文教会你如何通过Docker安装elasticsearch和kibana 【详细过程+图解】
这篇文章提供了通过Docker安装Elasticsearch和Kibana的详细过程和图解,包括下载镜像、创建和启动容器、处理可能遇到的启动失败情况(如权限不足和配置文件错误)、测试Elasticsearch和Kibana的连接,以及解决空间不足的问题。文章还特别指出了配置文件中空格的重要性以及环境变量中字母大小写的问题。
一文教会你如何通过Docker安装elasticsearch和kibana 【详细过程+图解】
|
1天前
|
关系型数据库 MySQL Linux
一文教会你如何在Linux系统中使用Docker安装Mysql 5.7版本 【详细过程+图解】
这篇文章提供了在Linux系统中使用Docker安装Mysql 5.7版本的详细过程和图解,包括安装指定版本、创建实例、启动、使用Navicat连接测试、文件挂载与端口映射、进入容器、配置文件修改以及重新启动容器等步骤。
一文教会你如何在Linux系统中使用Docker安装Mysql 5.7版本 【详细过程+图解】
|
2天前
|
Ubuntu Shell Docker
在Docker环境下如何“安装”Ubuntu
【8月更文挑战第18天】在Docker环境中“安装”Ubuntu实际上是指利用Ubuntu镜像构建容器。
18 1
|
5天前
|
存储 Ubuntu Linux
如何安装和使用 Docker:入门指南
如何安装和使用 Docker:入门指南
29 1
|
5天前
|
存储 关系型数据库 Linux
在CentOS 7上安装和使用Docker的方法
在CentOS 7上安装和使用Docker的方法
31 1
|
5天前
|
Ubuntu Shell 应用服务中间件
在Ubuntu 14.04上安装和使用Docker Compose的方法
在Ubuntu 14.04上安装和使用Docker Compose的方法
14 1