Как сохранить копию параметров, которые я использую для запуска образа в Docker? - PullRequest
3 голосов
/ 11 апреля 2019

Я только что понял, как настроить и запустить swagger-ui с Docker с помощью моего собственного файла openapi.json, используя следующую команду:

docker run -p 80:8080 -e SWAGGER_JSON=/foo/openapi.json -v ~/source:/foo swaggerapi/swagger-ui

Файл openapi.json находится в управлении исходным кодом, и этоможет быть запущен во многих местах.

Есть ли способ облегчить повторный запуск этой команды, кроме простого помещения ее в README?Могу ли я использовать Dockerfile для этого?Или я могу использовать docker-compose?Самая важная часть - это просто сделать это проще, а потом - легко изменить / добавить опции.

Я также знаю, что мог бы использовать скрипт bash, который мог бы просто изменить, но мне интересноесли есть какой-нибудь способ Docker сделать это, а не взломать.

Ответы [ 2 ]

1 голос
/ 11 апреля 2019

docker-compose - ваше идеальное решение:

//docker-compose.yml

version: '3.7'
services:
  swagger:
    image: swaggerapi/swagger-ui
    ports:
      - "80:8080"
    environment:
      - SWAGGER_JSON=/foo/openapi.json
    volumes:
      - "~/source:/foo "

, чтобы запустить его, просто нажмите docker-compose up и все готово

1 голос
/ 11 апреля 2019

Я предпочитаю использовать docker-compose для более сложных запусков, чтобы сохранить все параметры в файле yaml.Тогда все, что вам нужно для запуска контейнера, это docker-compose up.Для большего количества опций внутри приложения вы можете использовать файл .env.

Я думаю, что это самый простой способ запустить контейнеры, и он не требует никаких знаний для следующих пользователей / разработчиков этой среды.

...