温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

docker Swarm 中怎么在docker-compose使用变量

发布时间:2021-06-23 13:42:24 来源:亿速云 阅读:364 作者:chen 栏目:大数据

本篇内容主要讲解“docker Swarm 中怎么在docker-compose使用变量”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“docker Swarm 中怎么在docker-compose使用变量”吧!

先看一个docker-comose的yml文件

version: "3.2"
services:
  docker-test:
    hostname: docker-test
    image: '${DOCKER_REGISTRY_URL}/dockerteam/docker-test:1.0'
    ports:
      - "9118"
    env_file: .env
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
      placement:
        constraints: [node.role== worker]
      resources:
        limits:
#          cpus: '1'
          memory: 1GB
        reservations:
#          cpus: '0.2'
          memory: 512M

如上文件中,env_file在docker-comose 命令里是支持的,只需要提供对应的.env文件,在.env文件中设置${DOCKER_REGISTRY_URL}变量即可。

但是如果线上在docker swarm 集群环境中docker-comose使用env_file是无效的,那这时候怎么办?这时候不能再去使用.env文件了,我尝试了一下把变量加入到宿主机的环境变量里:

 export DOCKER_REGISTRY_URL=docker.sifu.cn:12135

再次运行docker stack命令,服务部署成功。

注意:上述的加入环境变量我只是做测试之用,如果真实情况,请在/etc/profile文件里添加对应的环境变量

到此,相信大家对“docker Swarm 中怎么在docker-compose使用变量”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI