diff --git a/Makefile b/Makefile index cc2d04c9ee02a8edeeedbf2235963ef87830512d..7c736d80ec80e11779fe157973190323f9460dad 100644 --- a/Makefile +++ b/Makefile @@ -105,6 +105,8 @@ build-basic-interface-monitoring-app: pre containerize-all: containerize-gosdn containerize-gosdnc containerize-plugin-registry containerize-target +containerize-slim: containerize-gosdn containerize-gosdnc containerize-plugin-registry + containerize-gosdn: docker buildx build --rm -t gosdn --load -f controller/controller.Dockerfile . @@ -133,6 +135,15 @@ containerlab-start: create-clab-dir containerize-all cd $(CLAB_DIR) &&\ sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml +# build gnmi-target docker file before use +containerlab-slim-start: create-clab-dir containerize-slim + cd $(CLAB_DIR) &&\ + sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn_slim.clab.yaml + +containerlab-slim-start-reconfigure: create-clab-dir containerize-slim + cd $(CLAB_DIR) &&\ + sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn_slim.clab.yaml --reconfigure + containerlab-start-reconfigure: create-clab-dir containerize-all cd $(CLAB_DIR) &&\ sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml --reconfigure @@ -141,6 +152,10 @@ containerlab-stop: create-clab-dir cd $(CLAB_DIR) &&\ sudo containerlab destroy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml +containerlab-slim-stop: create-clab-dir + cd $(CLAB_DIR) &&\ + sudo containerlab destroy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn_slim.clab.yaml + containerlab-graph: create-clab-dir cd $(CLAB_DIR) &&\ sudo containerlab graph --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml diff --git a/dev_env_data/clab/gosdn_slim.clab.yaml b/dev_env_data/clab/gosdn_slim.clab.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c68de7bd2d5e484a08f99a031a3345dd8293e938 --- /dev/null +++ b/dev_env_data/clab/gosdn_slim.clab.yaml @@ -0,0 +1,89 @@ +name: gosdn-lab00 + +mgmt: + network: gosdn-lab00-net + ipv4_subnet: 172.100.0.0/16 + ipv6_subnet: 2001:db8::/64 + +topology: + nodes: + + plugin-registry: + kind: linux + image: plugin-registry + mgmt_ipv4: 172.100.0.16 + + gosdn: + kind: linux + image: gosdn + ports: + - 55055:55055 + - 8080:8080 + - 40000:40000 + cmd: + --config /app/configs/containerlab-gosdn.toml + mgmt_ipv4: 172.100.0.5 + env: + GOSDN_ADMIN_PASSWORD: TestPassword + + gnmi-target-switch0: + kind: linux + image: gnmi-target + ports: + - 7030:7030 + mgmt_ipv4: 172.100.0.11 + startup-delay: 5 + + gnmi-target-switch1: + kind: linux + image: gnmi-target + ports: + - 7031:7030 + mgmt_ipv4: 172.100.0.12 + startup-delay: 5 + + centos0: + kind: linux + image: centos:8 + mgmt_ipv4: 172.100.0.3 + group: server + + centos1: + kind: linux + image: centos:8 + mgmt_ipv4: 172.100.0.4 + group: server + + mongodb: + kind: linux + image: mongo:5 + ports: + - 27017:27017 + env: + MONGO_INITDB_ROOT_USERNAME: root + MONGO_INITDB_ROOT_PASSWORD: example + mgmt_ipv4: 172.100.0.13 + + mongodb-express: + kind: linux + image: mongo-express:0.54.0 + ports: + - 8081:8081 + env: + ME_CONFIG_MONGODB_ADMINUSERNAME: root + ME_CONFIG_MONGODB_ADMINPASSWORD: example + ME_CONFIG_MONGODB_SERVER: mongodb + mgmt_ipv4: 172.100.0.14 + + rabbitmq: + kind: linux + image: rabbitmq:3-management + ports: + - 127.0.0.1:5672:5672 + - 127.0.0.1:15672:15672 + mgmt_ipv4: 172.100.0.15 + + links: + - endpoints: ["gnmi-target-switch0:eth1","gnmi-target-switch1:eth1"] + - endpoints: ["gnmi-target-switch0:eth2","centos0:eth1"] + - endpoints: ["gnmi-target-switch1:eth2","centos1:eth1"]