docker context命令,入门,连接另一个docke server(daemon)

参考

docker-context 命令的作用,是什么? B站演示(用到了docker machine)

docker-contxt官方参考

CSDN开启docker server远程连接博客(配置了HTTPS的连接)

docker daemon官方参考,如何开启远程连接

docker context 命令的作用

docker context 的作用是允许docker客户端也就是cli,可以动态的切换到不同的docker server上。

使用场景:

例如通过docker-cli,使用在x86和arm平台上的docker server打镜像(使用docker buildx也可以打不同平台的镜像)

正文

这里为了加速理解入门,使用 HTTP连接,HTTPS参考其他文档。
docker context --help 查看其他用法

  • 查看本机 docker context 有哪些
# 这个是我的本机docker 默认的配置
root@mawl-PC:~# docker context ls
NAME              DESCRIPTION                               DOCKER ENDPOINT               KUBERNETES ENDPOINT                    ORCHESTRATOR
default *         Current DOCKER_HOST based configuration   unix:///var/run/docker.sock   https://192.168.50.93:6443 (default)   swarm
# 查看都有哪些正在运行的容器,只有一个容器正在运行
root@mawl-PC:~# docker ps
CONTAINER ID   IMAGE      COMMAND                  CREATED             STATUS             PORTS     NAMES
b1f2e6dc1ad7   nginx:v1   "/docker-entrypoint.…"   About an hour ago   Up About an hour   80/tcp    nginx-context
  • 在另一个节点B,开启 docker server的远程连接

    编辑 /usr/lib/systemd/system/docker.service 文件,在适当位置添加如下内容(2376是TCP开放端口):

    -H tcp://0.0.0.0:2376
    

    完整配置

    ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2376
    

    重启docker

    systemctl daemon-reload
    systemctl restart docker
    

    验证是否可以远程连接。192.168.10.119是此台节点的地址:
    在这里插入图片描述

  • 在本机,将节点B的docker server加入控制

    # 将节点B的docker server纳入控制
    root@mawl-PC:~# docker context create local-vm-docker --description "local vm docker test" --docker "host=tcp://192.168.10.119:2376"
    local-vm-docker
    Successfully created context "local-vm-docker"
    
    # 查看 context
    root@mawl-PC:~# docker context ls
    NAME              DESCRIPTION                               DOCKER ENDPOINT               KUBERNETES ENDPOINT                    ORCHESTRATOR
    default *         Current DOCKER_HOST based configuration   unix:///var/run/docker.sock   https://192.168.50.93:6443 (default)   swarm
    local-vm-docker   local vm docker test                      tcp://192.168.10.119:2376  
    
    # 切换context
    root@mawl-PC:~# docker context use local-vm-docker
    local-vm-docker
    Current context is now "local-vm-docker"
    
    # 查看此server 的运行容器
    root@mawl-PC:~# docker ps
    CONTAINER ID   IMAGE                     COMMAND                  CREATED          STATUS                                  PORTS     NAMES
    217443d12b46   kubesphere/etcd:v3.3.12   "/usr/local/bin/etcd"    3 seconds ago    Restarting (1) Less than a second ago             etcd1
    ccd9f2335df9   kubesphere/pause:3.1      "/pause"                 20 minutes ago   Up 20 minutes                                     
    // 省略...
    

PS

如果帮助到你的话,点个赞鼓励下,欢迎加入我的置顶博客的javaweb交流群,不搞带课推广,让我们一起向诗靠拢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值