| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| version: "3.9" |
| services: |
| shenyu-zk: |
| container_name: shenyu-zk |
| image: zookeeper:3.5 |
| restart: always |
| networks: |
| - shenyu |
| |
| shenyu-redis: |
| image: redis:6.0-alpine |
| container_name: shenyu-redis |
| restart: always |
| command: redis-server --requirepass abc |
| networks: |
| - shenyu |
| healthcheck: |
| test: [ "CMD", "redis-cli", "ping" ] |
| |
| shenyu-examples-http: |
| deploy: |
| resources: |
| limits: |
| memory: 2048M |
| container_name: shenyu-examples-http |
| image: shenyu-examples-http:latest |
| restart: always |
| environment: |
| - shenyu.register.serverLists=http://shenyu-admin:9095 |
| healthcheck: |
| test: [ "CMD", "wget", "http://shenyu-examples-http:8189/test/path/123?name=tom" ] |
| timeout: 2s |
| retries: 30 |
| ports: |
| - "8189:8189" |
| depends_on: |
| shenyu-integrated-test-combination: |
| condition: service_healthy |
| networks: |
| - shenyu |
| |
| shenyu-examples-apache-dubbo-service: |
| deploy: |
| resources: |
| limits: |
| memory: 2048M |
| container_name: shenyu-examples-apache-dubbo-service |
| image: shenyu-examples-apache-dubbo-service:latest |
| restart: always |
| healthcheck: |
| test: ["CMD-SHELL", "wget -q -O - http://localhost:8011/actuator/health | grep UP || exit 1"] |
| timeout: 2s |
| retries: 3 |
| start_period: 5s |
| ports: |
| - "8011:8011" |
| - "20888:20888" |
| networks: |
| - shenyu |
| depends_on: |
| shenyu-integrated-test-combination: |
| condition: service_healthy |
| environment: |
| - dubbo.registry.address=zookeeper://shenyu-zk:2181 |
| - shenyu.register.serverLists=http://shenyu-admin:9095 |
| |
| shenyu-examples-grpc: |
| deploy: |
| resources: |
| limits: |
| memory: 2048M |
| container_name: shenyu-examples-grpc |
| image: shenyu-examples-grpc:latest |
| restart: always |
| environment: |
| - shenyu.register.serverLists=http://shenyu-admin:9095 |
| healthcheck: |
| test: [ "CMD-SHELL", "wget -q -O - http://localhost:55290/test/grpc/hello | grep UP || exit 1" ] |
| timeout: 2s |
| retries: 3 |
| start_period: 5s |
| ports: |
| - "55290:55290" |
| - "8080:8080" |
| networks: |
| - shenyu |
| depends_on: |
| shenyu-integrated-test-combination: |
| condition: service_healthy |
| |
| shenyu-examples-motan: |
| deploy: |
| resources: |
| limits: |
| memory: 2048M |
| container_name: shenyu-examples-motan |
| image: shenyu-examples-motan:latest |
| restart: always |
| environment: |
| - motan.registry.protocol=zookeeper |
| - motan.registry.address=shenyu-zk:2181 |
| - shenyu.register.serverLists=http://shenyu-admin:9095 |
| healthcheck: |
| test: [ "CMD-SHELL", "wget -q -O - http://localhost:8081/actuator/health | grep UP || exit 1" ] |
| timeout: 2s |
| retries: 3 |
| start_period: 5s |
| ports: |
| - "8081:8081" |
| - "8002:8002" |
| networks: |
| - shenyu |
| depends_on: |
| shenyu-integrated-test-combination: |
| condition: service_healthy |
| |
| shenyu-examples-sofa: |
| deploy: |
| resources: |
| limits: |
| memory: 2048M |
| container_name: shenyu-examples-sofa |
| image: shenyu-examples-sofa:latest |
| restart: always |
| environment: |
| - shenyu.register.serverLists=http://shenyu-admin:9095 |
| - com.alipay.sofa.rpc.registry-address=zookeeper://shenyu-zk:2181 |
| healthcheck: |
| test: [ "CMD-SHELL", "wget -q -O - http://localhost:28011/sofa/findAll | grep UP || exit 1" ] |
| timeout: 2s |
| retries: 3 |
| start_period: 5s |
| ports: |
| - "28011:28011" |
| - "8888:8888" |
| networks: |
| - shenyu |
| depends_on: |
| shenyu-integrated-test-combination: |
| condition: service_healthy |
| |
| shenyu-admin: |
| image: apache/shenyu-admin:latest |
| container_name: shenyu-admin |
| restart: always |
| networks: |
| - shenyu |
| depends_on: |
| shenyu-redis: |
| condition: service_healthy |
| ports: |
| - "9095:9095" |
| environment: |
| - SPRING_PROFILES_ACTIVE=h2 |
| - shenyu.database.init_script=sql-script/h2/schema.sql |
| healthcheck: |
| test: ["CMD-SHELL", "wget -q -O - http://shenyu-admin:9095/actuator/health | grep UP || exit 1"] |
| timeout: 2s |
| retries: 30 |
| |
| shenyu-integrated-test-combination: |
| container_name: shenyu-integrated-test-combination |
| image: apache/shenyu-integrated-test-combination:latest |
| restart: always |
| deploy: |
| resources: |
| limits: |
| memory: 2048M |
| environment: |
| - shenyu.sync.websocket.urls=ws://shenyu-admin:9095/websocket |
| depends_on: |
| shenyu-admin: |
| condition: service_healthy |
| ports: |
| - "9195:9195" |
| networks: |
| - shenyu |
| healthcheck: |
| test: [ "CMD", "wget", "http://shenyu-integrated-test-combination:9195/actuator/health" ] |
| timeout: 2s |
| retries: 30 |
| |
| networks: |
| shenyu: |
| name: shenyu |