Нужна помощь в создании докер сочинить запустить свой контейнер без возможности войти в него в производстве. Я пытался добиться этого путем переопределения параметров 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 (звучит странно, но я чувствую, что схожу с ума)? Или то, что я пропустил?