【问题标题】:Docker doesn't copy new imagesDocker 不会复制新图像
【发布时间】:2020-12-16 16:39:00
【问题描述】:

我有一个关于 Docker 的问题。

当我部署新版本的应用映像时,我添加到 wwwroot 文件夹中的 images 文件夹中的图像不会被复制..

我的 Dockerfile 看起来像这样:

FROM microsoft/aspnetcore-build:1.0-projectjson

WORKDIR /app-src
COPY . .

RUN dotnet restore
RUN dotnet publish src/Test -o /app

EXPOSE 5000
WORKDIR /app
ENTRYPOINT ["dotnet", "Test.dll"]

还有我的 docker-compose:

version: '3.8'
services:
   app:
    image: <dockeruser>/<imagename>:<tag>
    links:
      - db
    environment:
      ConnectionStrings__Dataconnection: "Host=db;Username=Username;Password=Password;Database=db"
    ports:
      - "5000:5000"
    volumes:
      - ~/data/images:/app/wwwroot/images
   db:
    image: postgres:9.5
    ports:
      - "31337:5432"
    volumes:
      - ~/data/db:/var/lib/postgresql/data/pgdata
    environment:
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
      POSTGRES_DB: db
      PGDATA: /var/lib/postgresql/data/pgdata

我当前的 docker 版本是: Docker version 18.09.7, build 2d0083d 和 docker-compose docker-compose version 1.26.2, build eefe0d31 之前在 docker 版本 Docker version 17.03.0-ce, build 60ccb22 和 docker-compose 版本 docker-compose version 1.9.0, build 2585387 上工作的完全相同的文件(除了 docker-compose 版本在 docker-compose.yml 中设置为 2)

我将我的新图像存储在我的 repos wwwroot/images 文件夹中,然后将它们推送到 repo,然后 dockerhub 会自动从新提交中构建一个图像。然后在服务器上拉出新的 docker-image 并运行docker-compose down -v 命令,然后运行docker-compose up -d,但之后图像在应用程序中不可用。

免责声明:这是一个我已经超越的项目,我知道一些非常旧的软件版本。

【问题讨论】:

  • 如果/data/db与撰写文件位于同一目录中,则删除~前面的./data/db并使用./data/db。否则我认为你需要使用完整路径。
  • volumes: 将图像的内容与您的主机系统上的相应内容隐藏起来。在容器启动时,这实际上是“推送”到容器中,而不是相反。如果您更新了映像中的内容,请删除隐藏它的绑定挂载。

标签: asp.net docker asp.net-core docker-compose


【解决方案1】:

您的图像可能在您的容器图像中,但是由于您正在执行绑定挂载,因此在创建容器时,服务器的“~/data/images”目录中的任何内容基本上都会“覆盖/替换”您的图像中的内容。

尝试从应用服务中删除音量,基本上删除这个:

卷: - ~/data/images:/app/wwwroot/images

您可以尝试的另一件事是将图像手动复制到服务器上的“~/data/images”目录。

【讨论】:

  • 我想我有一些关于绑定和挂载的阅读。不管怎样,它奏效了。先生非常感谢您!编辑:从应用服务中删除卷是有效的。
猜你喜欢
  • 2021-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多