我已将DTR安装在单个管理器, worker 群集上(在设置适当的环境之前先玩弄它以获得更好的理解)

DTR安装成功。我想卸载DTR,并且卸载它没有任何问题。以下命令用于基于文档的卸载 Activity 。

docker run -it --rm \
>   docker/dtr:2.5.3 destroy \
>   --ucp-insecure-tls

运行docker ps确认与DTR关联的容器不再运行。

但是,当我登录到UCP时,仍然看到旧的DTR,并且看不到删除它的方法。

我感到困惑,不确定如何清理并创建新的DTR。

docker - 如何卸载Docker Trusted Registry(DTR)?-LMLPHP

最佳答案

docker / dtr会根据DTR CLI usage documentation强制销毁命令,并以非阻塞方式删除
现有DTR复制副本的卷和容器。

此外,正如在Docker论坛(https://forums.docker.com/t/uninstalling-dtr-doesnt-update-ucp-ui/31788/2)上所说,这似乎是DTR的老问题。

一个Docker知识库article中总结了如何修复它。
报告的步骤如下:


  • # CURRENT_CONFIG_NAME will be the name of the currently active UCP configuration
    CURRENT_CONFIG_NAME=$(docker service inspect ucp-agent --format '{{range .Spec.TaskTemplate.ContainerSpec.Configs}}{{if eq "/etc/ucp/ucp.toml" .File.Name}}{{.ConfigName}}{{end}}{{end}}')
    
    # Collect the current config with `docker config inspect`
    docker config inspect --format '{{ printf "%s" .Spec.Data }}' $CURRENT_CONFIG_NAME > ucp-config.toml
    

  •  # NEXT_CONFIG_NAME will be the name of the new UCP configuration
     NEXT_CONFIG_NAME=${CURRENT_CONFIG_NAME%%-*}-$((${CURRENT_CONFIG_NAME##*-}+1))
    
     # Create the new swarm configuration from the file ucp-config.toml
     docker config create $NEXT_CONFIG_NAME ucp-config.toml
    
     # Use the `docker service update` command to remove the current configuration and apply the new configuration to the `ucp-agent` service.
     docker service update --config-rm $CURRENT_CONFIG_NAME --config-add source=$NEXT_CONFIG_NAME,target=/etc/ucp/ucp.toml ucp-agent
    
  • 关于docker - 如何卸载Docker Trusted Registry(DTR)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51397119/

    10-10 18:08