blob: 020e61f73ac28cbdfa2c00cd5264f63c3f573da5 [file] [log] [blame]
# 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.
timeout: 300
services:
dubbo-samples-configcenter-apollo:
type: app
basedir: .
mainClass: org.apache.dubbo.samples.configcenter.ApolloProvider
systemProps:
- zookeeper.address=dubbo-samples-configcenter-apollo
- zookeeper.port=2181
- apollo.address=apollo-quick-start
- apollo.port=8080
waitPortsBeforeRun:
- apollo-quick-start:8080
- apollo-quick-start:8090
waitTimeout: 100
checkPorts:
- 20880
depends_on:
- apollo-db
- apollo-quick-start
dubbo-samples-configcenter-apollo-test:
type: test
basedir: .
tests:
- "**/*IT.class"
systemProps:
- zookeeper.address=dubbo-samples-configcenter-apollo
- zookeeper.port=2181
- dubbo.address=dubbo-samples-configcenter-apollo
- dubbo.port=20880
- apollo.address=apollo-quick-start
- apollo.port=8080
waitPortsBeforeRun:
- dubbo-samples-configcenter-apollo:2181
- dubbo-samples-configcenter-apollo:20880
- apollo-quick-start:8080
- apollo-quick-start:8090
waitTimeout: 100
depends_on:
- apollo-quick-start
- dubbo-samples-configcenter-apollo
apollo-quick-start:
image: nobodyiam/apollo-quick-start
depends_on:
- apollo-db
expose:
- 8080
- 8090
environment:
- APOLLO_SERVICE=1
- DB_ADDRESS=apollo-db:3306
volumes:
- ${_basedir}/src/main/resources/docker/demo.sh:/apollo-quick-start/demo.sh
- ./logs:/apollo-quick-start/logs
healthcheck:
#check apollo config service api
test: 'curl -Ss http://localhost:8080/services/config\?appId=SampleApp | grep apollo-configservice'
interval: 5s
timeout: 5s
retries: 60
apollo-db:
image: mysql:5.7
environment:
- TZ=Asia/Shanghai
- MYSQL_ALLOW_EMPTY_PASSWORD=yes
expose:
- 3306
healthcheck:
# mysql host MUST be ip address, if the host is localhost, may connect via socket file, the port will be ignored
test: ["CMD", "mysqladmin" ,"ping", "-h", "127.0.0.1"]
interval: 5s
timeout: 5s
retries: 40
volumes:
- ${_basedir}/src/main/resources/docker/sql:/docker-entrypoint-initdb.d
- ./sql_data:/var/lib/mysql
# volumes_from:
# - apollo-dbdata
# depends_on:
# - apollo-dbdata
#
# apollo-dbdata:
# image: alpine:latest
# volumes:
# - /var/lib/mysql