Docker-compose up -d команда каким-то образом переопределяет производственные настройки stdin и tty - PullRequest
1 голос
/ 12 ноября 2019

Нужна помощь в создании докер сочинить запустить свой контейнер без возможности войти в него в производстве. Я пытался добиться этого путем переопределения параметров stdin и tty файла compose, но не смог ... много раз.

У меня есть stdin и tty, открытые для разработки в моем файле compose (docker-compose.yml):

services:
  web:
    image: some_image
    container_name: my_service_dev
    environment:
     .....
    stdin_open: true
    tty: true

Я сделал еще один файл для производства и переопределить некоторые настройки вкл. опущены stdin_open и tty (docker-compose-prod.yml).

services:
  web:
    image: some_image
    container_name: my_service_prod
    environment:
....

После перекомпоновки изображений с помощью docker создайте

docker-compose -f docker-compose-prod.yml build --no-chache

и запустите их с помощью

docker-compose -f docker-compose-prod.yml up -d

Я все еще могу ввести псевдотерминал этого контейнера с помощью docker exec.

Я пытался явно отключить stdin при следующей попытке (docker-compose-prod.yml)

services:
  web:
    image: some_image
    container_name: my_service_prod
    environment:
     .....
    stdin_open: false
    tty: false

Перестроенон запускался с тем же результатом.

Затем я предположил, что мой файл docker-compose.yml каким-то образом объединен для создания / запуска настроек, поэтому я переименовал его в docker-compose-default.yml.

1023 * Но, увы, я все еще заметить, что мой контейнер работает с открытым в стандартном вводе производств. Всегда ли docker-compose up -d запускается с открытым stdin / tty (звучит странно, но я чувствую, что схожу с ума)? Или то, что я пропустил?
...