本文最后更新于 2020年08月13日
目录
前言
docker-compose部署容器实在太方便了,但是每一次 down
,up
都会生成新的IP,导致开发不便,比如Nginx设置的地址又需要重新修改,本文就来教大家如何在固定住docker-compose中固定docker 容器ip
IPAM 驱动
我们需要用到docker ipam IP Address Management Driver
,有兴趣的可以去docker官方文档了解一下
https://docs.docker.com/engine/reference/commandline/network_create/
docker-compose.yml
了解之后,还是很简单的,关于网络的部分我都写上注释了,应该一看就懂
version: '3'
services:
rsshub:
image: diygod/rsshub
restart: always
networks:
rsshub_net:
ipv4_address: 172.19.0.4
# rsshub的内部ip地址就固定住了
environment:
NODE_ENV: production
CACHE_TYPE: redis
REDIS_URL: 'redis://redis:6379/'
PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
depends_on:
# depends_on 容器启动依赖顺序,被依赖的容器启动完后rsshub就会开始启动
- redis
- browserless
browserless:
image: browserless/chrome
restart: always
networks:
rsshub_net:
ipv4_address: 172.19.0.3
redis:
image: redis:alpine
restart: always
networks:
rsshub_net:
ipv4_address: 172.19.0.2
# 保留 172.19.0.1 作为 rsshub_net 的网关ip
volumes:
- redis-data:/data
networks:
rsshub_net:
driver: bridge
ipam:
config:
- subnet: 172.19.0.0/16
# 子网
volumes:
redis-data:
原创声明
本文由 NG6 于2020年04月26日发表在 sleele的博客
如未特殊声明,本站所有文章均为原创;你可以在保留作者及原文地址的情况下转载
转载请注明:docker-compose固定容器IP写法 | sleele的博客
本文由 NG6 于2020年04月26日发表在 sleele的博客
如未特殊声明,本站所有文章均为原创;你可以在保留作者及原文地址的情况下转载
转载请注明:docker-compose固定容器IP写法 | sleele的博客