redocly-cli icon indicating copy to clipboard operation
redocly-cli copied to clipboard

preview-docs in Docker image doesn't exit on ctrl+c

Open akrabat opened this issue 1 year ago • 2 comments

Describe the bug

When running the preview-docs command using the Docker image, it doesn't respond to ctrl+c to exit.

To Reproduce Steps to reproduce the behaviour:

  1. Create a valid openapi.yaml file.

  2. Run this command:

     docker run --rm -p 8080:8080 -v $PWD:/spec redocly/cli preview-docs \
     openapi.yaml --use-community-edition --host 0.0.0.0
    
  3. Try to exit by pressing ctrl+c as you would do with the npm version

  4. Note that redocly hasn't exited.

Note, I have also tried adding the -t and -i flags to the docker command.

Expected behaviour

The docker container exits and control is returned to the shell in the terminal.

i.e. I expected it to behave in the same way as docker run redis does when you press ctrl+c.

Redocly Version(s)

$ docker run --rm redocly/cli --version
1.22.0

Node.js Version(s)

Whatever is in the Docker image.

OS, environment

MacOS 14.6.1 (Apple Silicon). Docker Desktop 4.31.0 (153195).

akrabat avatar Aug 29 '24 15:08 akrabat

I confirm this is a bug. Thanks for reporting it!

tatomyr avatar Sep 04 '24 09:09 tatomyr

Works for me if I add the --init flag to the docker run command:

docker run --init --rm -p 8080:8080 -v $PWD:/spec redocly/cli preview-docs \
 openapi.yaml --use-community-edition --host 0.0.0.0

See: https://github.com/nodejs/docker-node/blob/main/docs/BestPractices.md#handling-kernel-signals (requires Docker 1.13)

Maybe just the docs need updating.

asvng avatar Jan 03 '25 15:01 asvng