如何将带有自述文件的docker映像推送到docker hub?

如何将带有自述文件的docker映像推送到docker hub?,docker,dockerhub,readme,Docker,Dockerhub,Readme,我正试图将docker镜像推送到docker hub上我的私人回购协议中。然而,我确实看到Docker Hub上有一个“信息”部分,我想用关于我的图像的有用信息来更新它。我想知道我是否可以推一个README.md文件,Docker Hub可以解析这个文件并用它更新“信息”部分。我不确定是否应该在我的映像中嵌入README.md以使其正常工作?Docker Hub将尝试解析您的README.md如果您正在执行一个“.”手动构建(推送您自己的映像),Docker Hub不会查看您的映像源代码存储库,

我正试图将docker镜像推送到docker hub上我的私人回购协议中。然而,我确实看到Docker Hub上有一个“信息”部分,我想用关于我的图像的有用信息来更新它。我想知道我是否可以推一个README.md文件,Docker Hub可以解析这个文件并用它更新“信息”部分。我不确定是否应该在我的映像中嵌入README.md以使其正常工作?

Docker Hub将尝试解析您的
README.md
如果您正在执行一个“.”手动构建(推送您自己的映像),Docker Hub不会查看您的映像源代码存储库,也无法了解您的自述。您需要手动将自述文本添加到信息部分

GitHub操作可以从Readme.md文件更新Docker Hub说明

    - name: Docker Hub Description
      uses: peter-evans/dockerhub-description@v2
      env:
        DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
        DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
        DOCKERHUB_REPOSITORY: peterevans/dockerhub-description
您还可以独立于其他CI工具中的GitHub操作来使用它

    docker run -v $PWD:/workspace \
      -e DOCKERHUB_USERNAME='user1' \
      -e DOCKERHUB_PASSWORD='xxxxx' \
      -e DOCKERHUB_REPOSITORY='my-docker-image' \
      -e README_FILEPATH='/workspace/README.md' \
      peterevans/dockerhub-description:2.1.0
是一个Docker CLI插件,它向Docker添加了一个新的
Docker pushrm
(speak:push readme)命令。安装后,您可以通过以下方式将自述文件推送到Docker Hub、码头或港口:

$ ls
README.md
$ docker pushrm my-user/my-repo

它使用Docker的凭据存储中的登录,因此它“只适用于”您已经登录的注册表。我以交互方式和CI方式使用它。还有一个是基于它的。

谢谢@Andy,我也得出了同样的结论,并在Docker Hub上手动更新了信息。您可以通过调用Docker Hub API来自动更新信息,而不是手动更新。请参阅下面我的答案,了解我为此创建的实用程序。向第三方容器公开docker帐户密码是否安全?是否有审计显示它没有公开您的凭证?@AntonKrug与所有第三方操作一样,在工作流中使用fork操作、检查代码和使用fork是一种良好的做法。这个动作是开源的,所以你可以检查它是如何工作的。我不是说你的是开源的,但是总体上盲目地依赖各种容器而不检查是不好的,仅仅因为它是开源的,不能保证它的安全性。是的,使用特定的已验证标记并不坏。我认为这发生在许多OSS项目变更所有者的web浏览器加载项上,随着新版本的更新,出现了恶意软件。@AntonKrug该操作本身不使用容器。因此,如果您使用分叉代码并使用分叉,就无法引入恶意软件。该操作有一个Docker版本,可以在GitHub操作之外运行。如果使用已发布的容器,则需要信任所有者。当然,您可以创建并发布自己的副本。