Цель состоит в том, чтобы создать статический сайт в Docker для Windows и разместить его в браузере на локальном компьютере. Надежда должна напоминать функцию «часов». Поскольку не все пользователи имеют одинаковый путь к каталогу, из которого построен сайт, я думаю, что команду Docker необходимо выполнить из относительного каталога (%cd%
).
скрипт Docker
docker run --rm -it -p 8080:8080 -v %cd%:c:/windows/docs -m 3GB hcdocs/docfx:latest build c:/windows/docs/docfx.json --serve
(Когда у меня есть правильная команда Docker для создания сайта, я надеюсь добавить что-то вроде start chrome --new-window "http://localhost:8080"
, чтобы автоматически открывать браузер с предварительным просмотром сайта.)
Статическая команда построения сайта - docfx build docfx.json
, с добавлением --serve
для обслуживания сайта. Эта команда развертывает сайт по умолчанию на порту 8080
. Файл docfx.json
настраивает сайт для сборки в PlatformDocs\wwwroot
из корня проекта.
Что происходит
Журналы сайта, отображаемые в консоли, указывают, что сайт создан успешно. (Когда -it
удаляется из сценария Docker, полный сайт не создается.) Журнал заканчивается следующей строкой: Serving "c:\windows\docs\PlatformDocs\wwwroot" on http://localhost:8080
, из-за чего я считаю, что он успешно работает.
Однако, открытие http://localhost:8080
на моем локальном компьютере приводит к этой ошибке:
Forbidden URL
HTTP Error 403. The request URL is forbidden.
Что еще пытались
docker run --rm -it -v %cd%:c:/docs -m 2GB hcdocs/docfx:latest build c:/docs/docfx.json
docker run --rm -it -v %cd%/PlatformDocs/wwwroot:c:/docs/PlatformDocs/wwwroot -p 8080:8080 -m 2GB hcdocs/docfx:latest serve
Выходные данные показывают Serving "C:\" on http://localhost:8080
, но я ожидаю, что я хочу, чтобы он служил "C:\docs\PlatformDocs\wwwroot"
. В любом случае, обслуживание заканчивается быстро, так как завершается текущая командная строка и появляется новое приглашение.
Если это имеет значение
Я использую генератор статического сайта DocFx . Этот пример проекта, который похож на фактический проект: https://github.com/HealthCatalyst/docs-project-template/branches
Спасибо
Спасибо за любые идеи по любому аспекту этой цели.