docker-compose 固定容器IP地址

写在前面

构建微服务的时候需要固定容器的ip,防止后期重启后ip变动。
本来说在portainer里面固定的ip,虽然效果挺好的,但是还是想写在docker-compose里面。
这里提供两种方法固定ip

方法一 先创建一个网络,然后在指定

使用以下命令创建一个网络,ip可自定义

sudo docker network create --subnet=172.20.0.0/24 网络名字

然后在docker-compose里面填写好以下的配置(里面一些东西需要修改)
这种方法需要配合portainer进行固定ip。 具体参考: 这篇文章

services:
  # redis    
  redis:
    image: redis:latest
    container_name: redis
    restart: always
    ports: 
     - "6379:6379"
    networks:
     - persist    
    ...省略其他的配置
networks:
  persist:
    external:
      name: 网络名

如果一次性固定,应该是把上面的networks改一下成这样子,我也还没试过。。
等一个勇士。

    networks:
      persist:
        ipv4_address: 172.20.0.17 # 具体ip 

方法二

这个方法就不用先创建网络啦,也不用去portainer定制

services:
  # redis    
  redis:
    image: redis:latest
    container_name: redis
    restart: always
    ports: 
     - "6379:6379"
    networks:
      proxy:
        ipv4_address: 172.16.0.9 # 具体ip    
    ...省略其他的配置
# 网络    
networks:
  proxy:
    ipam:
      config:
      - subnet: 172.16.0.0/24

如果使用这种方式,但是某个服务并不用固定ip,可以将networks替换成下面这个(如果不开启全部定制,那可能会冲突)

    networks:
      proxy

参考

  1. docker-compose 固定容器IP地址 - 掘金
  2. 【docker】docker-compose 自定义容器ip地址_be5yond的博客-CSDN博客_docker-compose 指定ip

出处:docker-compose 固定容器IP地址 - 咕噜球 - 记录生活记录学习 (guluqiu.cc)

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值