docker run в Compose
Преобразуйте команду docker run в сервис docker-compose.yml или наоборот.
docker run в Compose
Вставьте команду docker run, и этот инструмент переписывает её как сервис docker-compose.yml, с образом, портами, томами, переменными окружения, сетью и политикой перезапуска, отображаемыми на эквиваленты compose. Переключите опцию направления и она работает и наоборот: вставьте файл compose и получите эквивалентную команду docker run для каждого сервиса, полезно когда у вас есть только файл compose, но нужно воспроизвести один контейнер вручную.
Вставьте несколько команд docker run, по одной в строку, и каждая станет отдельным сервисом в одном файле compose — удобно для превращения нескольких ad-hoc контейнеров в надлежащий стек с несколькими сервисами. Распознаны переключатели -p/--publish, -v/--volume, -e/--env, --network, --restart, --memory и --cpus (отображаются на блок deploy.resources.limits), а также --name, --workdir, --user, --entrypoint, --label и --hostname. Переменные окружения могут остаться встроены в environment: или быть перемещены в сгенерированный файл .env, на который ссылается env_file:, а формат файла compose может быть написан с ключом version: или без него.
Не каждый флаг docker run имеет эквивалент compose — такие вещи как --rm или --pull — это переключатели жизненного цикла контейнера, которые не имеют параметра compose для каждого сервиса. Инструмент никогда не опускает их молча: неподдерживаемые флаги перечисляются в виде комментариев рядом с сервисом, к которому они принадлежат, поэтому вы видите ровно то, что не было преобразовано. Отключение опции «сохранить порядок флагов» сортирует каждый список (порты, тома, окружение) по алфавиту вместо сохранения порядка, в котором вы их набрали, что может облегчить просмотр сгенерированного diff.
Всё запускается локально в вашем браузере — ни одна команда, имя образа или переменная окружения никогда никуда не отправляются. Скопируйте результат, загрузите как .txt файл или отправьте результат обратно на вход для дальнейшего совершенствования.