小编And*_*zen的帖子

Openshift 命令以非零退出代码终止:在 Docker 容器中执行错误:137

我在 openshift 上运行基于 opencpu 的映像,每次 pod 启动时,仅几秒钟后,它就会因错误而崩溃:

command terminated with non-zero exit code: Error executing in Docker Container: 137
Run Code Online (Sandbox Code Playgroud)

事件选项卡仅显示以下三个事件,终端日志也不显示任何内容。

Back-off restarting the failed container
Pod sandbox changed, it will be killed and re-created.
Killing container with id docker://opencpu-test-temp:Need to kill Pod
Run Code Online (Sandbox Code Playgroud)

我真的不知道为什么容器每隔几秒钟就重新启动一次。此映像在本地运行良好。

有没有人给我一个关于如何调试这个问题的线索?

openshift opencpu docker

2
推荐指数
1
解决办法
4673
查看次数

无法从 env_file 中声明的文件中读取环境变量

在我的 docker-compose.yml 中,我定义了两个服务,app以及db.

version: "3.7"

services:
  app:
    image: my_app
    container_name: my-app
    ports:
      - ${MY_PORT}:${MY_PORT}
    env_file:
      - ./app.env
    ...
    depends_on:
      - db
    environment:
      - DATABASE_URL=${DB_URL}
  db:
    image: my_db
    container_name: my-db
    env_file:
      - ./db.env
    ports:
      - ${DB_PORT}:${DB_PORT}
Run Code Online (Sandbox Code Playgroud)

正如你在上面看到的,我已经定义了两个 env 文件,app.envdb.env在和服务的env_file选项中。appdb

应用程序.env:

MY_PORT=8081
Run Code Online (Sandbox Code Playgroud)

db.env:

DB_PORT=4040
DB_URL=postgres://myapp:app@db:4040/myapp
Run Code Online (Sandbox Code Playgroud)

我想检查我的 docker-compose 是否可以成功读取环境变量。所以,我运行命令docker-compose config。但是输出是

$ docker-compose config
WARNING: The MY_PORT variable is not set. Defaulting to a blank string.
WARNING: The DB_URL variable …
Run Code Online (Sandbox Code Playgroud)

environment-variables docker docker-compose

1
推荐指数
1
解决办法
1008
查看次数