Docker 不安全注册表仅显示在 sudo docker info 中

问题描述 投票:0回答:1

一些帮助将不胜感激。

我运行一个服务器,并且正在运行一个 docker-registry,我正尝试从本地设备推送/拉取该注册表。我的本地设备配置如下:

    本地设备的
  1. sudo vim /etc/hosts
    并添加新条目:

    # Manually added for server Docker registry
    <server_ip>     nuc
    
  2. ping nuc
    以确保连接。

  3. sudo vim /etc/docker/daemon.json

    {
        "insecure-registries": ["nuc:5000"]
    }
    
  4. 编辑

    sudo vim /etc/default/docker

    {
        # Use DOCKER_OPTS to modify the daemon startup options.
        DOCKER_OPTS="--insecure-registry=nuc:5000"
    }
    

我遇到的问题是,运行

docker info
时,指定的
insecure-registry
未列出,但是,当我运行
sudo docker info
时,它会列出。请注意,我当前的
$USER
docker
组的一部分,我可以运行 docker 命令而无需使用
sudo
(遵循以下步骤:Docker 安装后步骤)。

注意我从 StackOverflow 获得灵感:

任何帮助和指导将不胜感激。

编辑:附加信息

  • docker context ls

    NAME                TYPE                DESCRIPTION                               DOCKER ENDPOINT                                KUBERNETES ENDPOINT   ORCHESTRATOR
    default             moby                Current DOCKER_HOST based configuration   unix:///var/run/docker.sock                                          
    desktop-linux *     moby                Docker Desktop                            unix:///home/ben/.docker/desktop/docker.sock
    
  • sudo docker context ls

    NAME                TYPE                DESCRIPTION                               DOCKER ENDPOINT               KUBERNETES ENDPOINT   ORCHESTRATOR
    default *           moby                Current DOCKER_HOST based configuration   unix:///var/run/docker.sock  
    
  • printenv DOCKER_HOST
    echo $DOCKER_HOST
    什么也没回来

  • sudo printenv DOCKER_HOST
    sudo echo $DOCKER_HOST
    什么也没回来

docker ubuntu docker-registry
1个回答
0
投票

docker context
输出来看,您似乎有两个独立的 docker 引擎。一种是直接安装在主机上,以 root 身份运行,并监听
/var/run/docker.sock
。另一个引擎在具有 Docker Desktop 的虚拟机内运行。

Linux 上的桌面文档~/.docker/desktop/settings.json

指定了它们自己的配置文件位置,并且还应该有一个用于更新其不安全注册表设置的 UI。

© www.soinside.com 2019 - 2024. All rights reserved.