docker安装apisix全教程包含windows和linux

news2024/12/26 23:27:50

docker安装apisix

  • 一、Windows安装
    • 1、首先需要安装docker和docker compose,如果直接安装docker desktop,会自动安装docker compose。
    • 2、重新启动电脑
    • 3、访问 Docker 的下载([https://www.docker.com/products/docker-desktop](https://www.docker.com/products/docker-desktop))页面,并单击其中的 Download for Windows 按钮。
    • 4、双击docker-desktop安装包进行安装
    • 5、下载apisix仓库,并使用docker-compose 启动apisix(会自动安装相关依赖,包括etcd),以下是安装命令。
      • 默认从master分支下载
      • 也可以从指定分支下载
      • 将当前的目录切换到apisix-docker/example路径下:
      • 运行docker-compose命令,启动Apache APISIX:
  • 二、Linux安装
    • 1、首先安装docker:
      • 安装依赖包
      • 设置阿里云镜像源
      • 安装 Docker-CE
      • 查看版本
      • 启动docker服务
    • 2、安装docker-compose
      • 下载Docker Compose的可执行文件。可以使用以下命令下载最新版本:
      • 下载缓慢可以使用国内代理服务下载:
      • 赋予可执行权限给下载的二进制文件:
      • 创建一个符号链接,将docker-compose命令链接到/usr/bin目录,以便可以全局访问:
      • 验证安装是否成功。运行以下命令,查看Docker Compose版本信息:
    • 3、下载apisix-docker仓库
    • 4、启动
      • 指定到apisix-docker/example文件夹下
      • 然后执行启动命令

一、Windows安装

1、首先需要安装docker和docker compose,如果直接安装docker desktop,会自动安装docker compose。

在安装之前,Windows 版 Docker 的环境有以下要求。
Windows 10 Pro(专业版) / Enterprise(企业版) / Education(教育版)(1607 Anniversary Update、Build 14393 或者更新的版本)。
Windows 必须是 64 位的版本。
需要启用 Windows 操作系统中的 Hyper-V 和容器特性。
接下来的步骤会假设读者的计算机已经开启了 BIOS 设置中的硬件虚拟化支持。如果没有开启,读者需要在机器上执行下面的步骤。
首先,读者需要确认在 Windows 10 操作系统中,Hyper-V 和容器特性已安装并且开启。

  1. 右键单击 Windows 开始按钮并选择“应用和功能”页面。
  2. 单击“程序和功能”链接。
  3. 单击“启用或关闭Windows功能”。
  4. 确认Hyper-V和容器复选框已经被勾选,并单击确定按钮。
    按上述步骤操作完成后,会安装并开启 Hyper-V 和容器特性,如下图所示。这时需要重启操作系统。
    在这里插入图片描述
    勾选三个功能然后点击确定
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    需要开启虚拟化
    在这里插入图片描述
    其中,容器特性只有在 summer 2016 Windows 10 Anniversary Update(build 14393)版本或更高版本上才能开启。
    当读者完成 Hyper-V 和容器特性的安装并重启机器之后,就可以安装 Windows 版 Docker 了。

2、重新启动电脑

3、访问 Docker 的下载(https://www.docker.com/products/docker-desktop)页面,并单击其中的 Download for Windows 按钮。

4、双击docker-desktop安装包进行安装

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重启电脑后,双击图标
在这里插入图片描述
点击accept
在这里插入图片描述

5、下载apisix仓库,并使用docker-compose 启动apisix(会自动安装相关依赖,包括etcd),以下是安装命令。

将Apache APISIX的Docker镜像下载到本地
这里可以选择下载指定版本的APISIX,只需要选择指定分支即可
如:可以选择分支release/apisix-3.4.1

默认从master分支下载

git clone https://github.com/apache/apisix-docker.git

也可以从指定分支下载

git clone -b release/apisix-3.4.1 https://github.com/apache/apisix-docker.git

将当前的目录切换到apisix-docker/example路径下:

cd apisix-docker/example

运行docker-compose命令,启动Apache APISIX:

docker-compose -p docker-apisix up -d

在这里插入图片描述
在这里插入图片描述
访问地址:
apisix dashboard: http://localhost:9000/,用户名/密码:admin/admin
grafana: http://localhost:3000
apixsix:http://localhost:9080
上游服务(测试): http://localhost:9081(web1-1)、http://localhost:9082(web2-1)

注:
windows系统重启之后,apisix启动后一直重启,重启的日志:

nginx: [emerg] bind() to unix:/usr/local/apisix/conf/config_listen.sock failed (98: Address already in use)

包括端口号9080一直不起作用的问题
没用找到好的解决方法,只能在docker desktop中把apisix 容器删除,重启执行命令:

docker-compose -p docker-apisix up -d

在apisix的upstream配置目标节点的ip,如果是本机,ip不能配置为localhost,需要配置本机的具体ip地址,这是因为配置成localhost,而apisix部署在本机的docker 虚拟机是没法访问localhost对应端口

参考链接:https://www.jianshu.com/p/9b422e585c24

二、Linux安装

1、首先安装docker:

执行docker -v 查看版本号。若无版本号则需要安装docker。

安装依赖包

sudo yum install -y yum-utils device-mapper-persistent-data lvm2 

设置阿里云镜像源

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

安装 Docker-CE

sudo yum install docker-ce

然后询问是否继续时均点击y

查看版本

docker version

启动docker服务

sudo systemctl start docker

2、安装docker-compose

执行 docker-compose --version 查看版本号,若无版本号则需要安装。图示在本章末尾。
要在Linux上安装Docker Compose命令,可以按照以下步骤进行操作:

下载Docker Compose的可执行文件。可以使用以下命令下载最新版本:

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

下载缓慢可以使用国内代理服务下载:

sudo curl -L "https://ghproxy.com/https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

如果要安装特定版本的Docker Compose,请将上述命令中的latest替换为所需的版本号。

赋予可执行权限给下载的二进制文件:

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

创建一个符号链接,将docker-compose命令链接到/usr/bin目录,以便可以全局访问:

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

验证安装是否成功。运行以下命令,查看Docker Compose版本信息:

docker-compose --version

如果安装成功,将显示Docker Compose的版本号。
这样,就成功在Linux上安装了Docker Compose命令。现在你可以使用docker-compose命令来管理和运行基于Docker Compose的应用程序。

原文链接:https://blog.csdn.net/weixin_51311218/article/details/131376823
在这里插入图片描述
在这里插入图片描述

3、下载apisix-docker仓库

若linux有git,执行

git clone https://github.com/apache/apisix-docker.git

若linux无git,则访问链接https://github.com/apache/apisix-docker下载压缩包后解压缩,然后导入linux,放在指定位置,
本次apisix-docker文件放置在/usr/local/文件夹下

4、启动

指定到apisix-docker/example文件夹下

 cd /usr/local/apisix-docker/example

然后执行启动命令

docker-compose -p docker-apisix up -d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1051058.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RocketMQ 版本升级测试

一、背景 RocketMQ 版本升级,3.6.4升级到5.1.3。 二、机器资源 应用端: 10.XX.67.249【机器 1】 cd /home/product/logs/dolphin_task_test_logs/ vim info.logMQ 服务端: 旧MQ 10.XX.108.249 broker-001。用于测试升级NameServer【机器 2…

react库的基础学习

React介绍 React.js是前端三大新框架:Angular.js、React.js、Vue.js之一,这三大新框架的很多理念是相同的,但是也有各自的特点。 React起源于Facebook的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满…

【数据库】形式化关系查询语言(一):关系代数Relational Algebra

目录 一、关系代数Relational Algebra 1. 基本运算 a. 选择运算(Select Operation) b. 投影运算(Project Operation) 组合 c. 并运算(Union Operation) d. 集合差运算(Set Difference Op…

【C++】vector基本接口介绍

vector接口目录: 一、vector的初步介绍 1.1vector和string的联系与不同 1.2 vector的源码参数 二、vector的四种构造(缺省填充元素迭代器拷贝构造) 三、vecto的扩容操作与机制 3.1resize(老朋友了,不会就去看str…

Linux文件查找,别名,用户组综合练习

1.文件查看: 查看/etc/passwd文件的第5行 [rootserver ~]# head -5 /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologi…

epoll与socket缓冲区的恩恩怨怨

文章目录 前言一、什么是socket缓冲区二、阻塞与非阻塞内核缓冲区1、如果发送缓冲区满了会怎么样阻塞非阻塞 2、如果接受缓冲区为空会怎么样阻塞非阻塞 三、epoll与缓冲区的恩恩怨怨水平触发边缘触发非阻塞阻塞 结论 前言 本文深挖网络编程中的缓冲区,从什么是缓冲…

排序:基数排序算法分析

1.算法思想 假设长度为n的线性表中每个结点aj的关键字由d元组 ( k j d − 1 , k j d − 2 , k j d − 3 , . . . , k j 1 , k j 0 ) (k_{j}^{d-1},k_{j}^{d-2},k_{j}^{d-3},... ,k_{j}^{1} ,k_{j}^{0}) (kjd−1​,kjd−2​,kjd−3​,...,kj1​,kj0​)组成, 其中&am…

微信小程序开发基础(一)认识小程序

微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。微信小程序是一种不用下载就能使用的应用,也是…

排序:外部排序算法分析

1.外存与内存之间的数据交换 1.外存(磁盘) 操作系统以“块”为单位对磁盘存储空间进行管理,如:每块大小1KB 各个磁盘块内存放着各种各样的数据。 2.内存 磁盘的读/写以“块”为单位数据读入内存后才能被修改修改完了还要写回磁盘。 2.外…

Purple-Pi-OH OHOS SDK编译手册

一、源码获取 1.1 源码获取 链接:百度网盘 请输入提取码 提取码:1234 $ mkdir purple-pi #将下载的ido_purple_pi_oh_ohos3.2_sdk.tgz拷贝到purple-pi $ cd purple-pi $ md5sum ido_purple_pi_oh_ohos3.2_sdk.tgz e6ca2d96aa7c628992ae0bbf4d14c2ca …

面试买书复习就能进大厂?

大家好,我是苍何。 现在进大仓是越来越难了,想通过简单的刷题面试背书,比几年前难的不少, 但也并非毫无希望,那究竟该如何准备才能有希望进大厂呢? 我总结了 4 点: 1、不差的学历背景 2、丰富…

EcmaScript标准-导入与导出-js

ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,所以它…

lwIP 开发指南(下)

目录 NETCONN 编程接口简介netbuf 数据缓冲区netconn 连接结构netconn 编程API 函数 NETCONN 编程接口UDP 实验NETCONN 实现UDPNETCONN 接口的UDP 实验硬件设计软件设计下载验证 NETCONN 接口编程TCP 客户端实验NETCONN 实现TCP 客户端连接步骤NETCONN 接口的TCPClient 实验硬件…

九、Delay函数

1、两个延时函数 vTaskDelay:至少等待指定个数的Tick Interrupt才能变为就绪态。vTaskDelayUntil:等待到指定的绝对时刻,才能变为就绪态。 2、函数原型 /* xTicksToDelay: 等待多少个Tick */ void vTaskDelay( const TickType_t xTicksToD…

1.(vue3.x+vite)封装组件

前端技术社区总目录(订阅之前请先查看该博客) 关联博客 2.(vue3.x+vite)组件注册并调用 1:创建组件目录package,并创建相关工程结构 2:编写组件内容(index.vue) 3:添加注册组件方法(index.js) 4:添加路由

QT按钮介绍

目录 按钮基类 QAbstractButton QPushButton QToolButton QRadioButton QCheckBox 按钮基类 QAbstractButton 这是按钮的基类,它是继承QWidget类 它可对当前的图标,标题等进行设置。 它有自己的一些信号与槽函数: /* 当按钮被激活时(即…

【C++的OpenCV】第十三课-OpenCV基础强化(一):绝对有用!Mat相关的一系列知识(基础->进阶)

🎉🎉🎉 欢迎各位来到小白 p i a o 的学习空间! \color{red}{欢迎各位来到小白piao的学习空间!} 欢迎各位来到小白piao的学习空间!🎉🎉🎉 💖💖&…

rhel8 网络操作学习

一、查询dns服务器地址汇总 1.查询dns服务器地址: (1)方法一:执行命令 cat /etc/resolv.conf 执行结果如下: nameserver后面就是dns服务器的ip地址。 (2)方法2:查看/etc/syscon…

Linux性能优化--性能工具-系统CPU

2.0.概述 本章概述了系统级的Linux性能工具。这些工具是你追踪性能问题时的第一道防线。 它们能展示整个系统的性能情况和哪些部分表现不好。 1.理解系统级性能的基本指标,包括CPU的使用情况。 2.明白哪些工具可以检索这些系统级性能指标。2.1CPU性能统计信息 为了…

基于单片机的煤气泄漏检测报警装置设计

一、项目介绍 煤气泄漏是一种常见的危险情况,可能导致火灾、爆炸和人员伤亡。为了及时发现煤气泄漏并采取相应的安全措施,设计了一种基于单片机的煤气泄漏检测报警装置。 主控芯片采用STM32F103C8T6作为主控芯片,具有强大的计算和控制能力。…