首页 > 解决方案 > 将 aspnet 应用程序内容复制到容器(IIS、windows)内的 wwwroot 工作正常,将相同的目录内容映射到 wwwroot 返回 401

问题描述

将应用程序内容复制到容器中时,它可以工作。但是,如果不是复制,而是将该文件夹映射到主机中的文件夹,我会从 IIS 得到 401。

所以,这行得通

# Dockerfile
FROM microsoft/aspnet

COPY ./src/publish/ /inetpub/wwwroot

# ---------------------------------

# docker-compose.yaml
version: '3.8'
services:
  webapp:
    build: .
    ports:
      - "8080:80"

浏览到 localhost:8080,OK。

现在,以下失败:

# Dockerfile
FROM microsoft/aspnet

# ----------------------------

# docker-compose.yaml
version: '3.8'
services:
  webapp:
    build: .
    ports:
      - "8080:80"   
    volumes:
      - ./src/publish/:C:/inetpub/wwwroot

浏览到 localhost:8080,我得到 401。

我检查了容器中 wwwroot 的内容,正如预期的那样,我在两种情况下都看到了相同的内容。IIS 日志 (inetpub/logs) 仅显示 401,没有更多信息。

我错过了什么?

标签: asp.net-mvcwindowsdockeriisdocker-compose

解决方案


没有遗漏任何东西。这是一个IIS问题。


推荐阅读