Kong官方docker 图片坏了?

Kong official docker images broken?

我正在尝试 运行 kong on docker\kubernetes 我尝试了一堆图像(0.13、0.11、0.11、2,一些高山图像)并且所有图像都共享相同的功能。如果我 运行 kong 里面没有任何反应。做 echo $? returns 132。我试过 运行ning /usr/local/bin/kong 但结果是一样的。

是我一个人坏了还是所有这些都坏了?

我正在使用 ubuntu 16.04\windows docker 具有最新 docker 版本之一的主机。他们都以同样的方式失败。

如果没问题,请解释我做错了什么?

你需要对 运行 Kong 做什么:

  1. 设置数据库,通常是 Cassandra 或 PostgreSQL,例如像这样:

    docker run -d --name kong-database \ -p 5432:5432 \ -e "POSTGRES_USER=kong" \ -e "POSTGRES_DB=kong" \ postgres:9.5

  2. 你需要运行 kong migrations up in a shell inside the container once:

    docker run --rm \ --link kong-database:kong-database \ -e "KONG_DATABASE=postgres" \ -e "KONG_PG_HOST=kong-database" \ kong kong migrations up

  3. 从匹配环境入手:

    docker run -d --name kong \ --link kong-database:kong-database \ -e "KONG_DATABASE= postgres" \ -e "KONG_PG_HOST=kong-database" \ -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" \ -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" \ -e "KONG_PROXY_ERROR_LOG=/dev/stderr" \ -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" \ -e "KONG_ADMIN_LISTEN=0.0.0.0:8001" \ -e "KONG_ADMIN_LISTEN_SSL=0.0.0.0:8444" \ -p 8000:8000 \ -p 8443:8443 \ -p 8001:8001 \ -p 8444:8444 \ kong

如果省略第二步,kong 将不会开始说它需要迁移到 运行。

我发现了这个问题(虽然目前不知道如何解决)。问题在于退出代码 132:SIGILL – 非法指令。

cat /proc/cpuinfo
model name      : AMD Opteron(tm) Processor 4171 HE

这导致我们 here, which kind-of gives away the sad part: this processor doesn't support SSE 4.2. Here is the proof.