diff --git a/api-gateway/src/main/resources/application-development-docker.yml b/api-gateway/src/main/resources/application-development-docker.yml index 4169ac87..f84d7edb 100644 --- a/api-gateway/src/main/resources/application-development-docker.yml +++ b/api-gateway/src/main/resources/application-development-docker.yml @@ -1,5 +1,5 @@ spring: zipkin: - base-url: http://maf.zipkin.development:9411 + base-url: http://maf.zipkin.development-local:9411 devtools: add-properties: true diff --git a/auth-center/src/main/resources/application-development-docker.yml b/auth-center/src/main/resources/application-development-docker.yml index 635ac732..3813c06b 100644 --- a/auth-center/src/main/resources/application-development-docker.yml +++ b/auth-center/src/main/resources/application-development-docker.yml @@ -1,21 +1,21 @@ spring: zipkin: - base-url: http://maf.zipkin.development:9411 + base-url: http://maf.zipkin.development-local:9411 devtools: add-properties: true datasource: - url: jdbc:mysql://maf.mysql.development:3306/muscle_and_fitness?useSSL=true&useUnicode=true + url: jdbc:mysql://maf.mysql.development-local:3306/muscle_and_fitness?useSSL=true&useUnicode=true username: root password: jm@mysql redis: - host: maf.redis.development + host: maf.redis.development-local port: 6379 password: 123456 sftp: client: configuration: - host: maf.atmoz-sftp.development + host: maf.atmoz-sftp.development-local port: 22 user: johnny password: atmoz@sftp diff --git a/docker/.env b/docker/.env index 6c7110a5..c44c7f4c 100644 --- a/docker/.env +++ b/docker/.env @@ -1,2 +1,22 @@ # TAG must be corresponding with the version tag in pom.xml, need to modify it when new version releases TAG=0.0.2-SNAPSHOT + +# ENVIRONMENT could be 'development-docker', 'production', 'stage' or 'test' +ENVIRONMENT=development-local + +# Docker container names (also docker container hostnames) +MYSQL_CONTAINER_NAME="maf.mysql.${ENVIRONMENT}" +REDIS_CONTAINER_NAME="maf.redis.${ENVIRONMENT}" +ATMOZ_SFTP_CONTAINER_NAME="maf.atmoz-sftp.${ENVIRONMENT}" +ZIPKIN_MYSQL_CONTAINER_NAME="maf.zipkin-mysql.${ENVIRONMENT}" +ZIPKIN_DEPENDENCIES_CONTAINER_NAME="maf.zipkin-dependencies.${ENVIRONMENT}" +ZIPKIN_CONTAINER_NAME="maf.zipkin.${ENVIRONMENT}" +CONSUL_SERVICE_REGISTRY_CONTAINER_NAME="maf.consul-service-registry.${ENVIRONMENT}" +SPRING_BOOT_ADMIN_CONTAINER_NAME="maf.spring-boot-admin.${ENVIRONMENT}" +API_GATEWAY_CONTAINER_NAME="maf.api-gateway.${ENVIRONMENT}" +AUTH_CENTER_CONTAINER_NAME="maf.auth-center.${ENVIRONMENT}" +EXERCISE_MIS_CONTAINER_NAME="maf.exercise-mis.${ENVIRONMENT}" +MUSCLE_MIS_CONTAINER_NAME="maf.muscle-mis.${ENVIRONMENT}" + +# JIB contain's Java tool options +JAVA_TOOL_OPTIONS="-Xms128m -Xmx128m -Dspring.profiles.active=${ENVIRONMENT} -Dspring.cloud.consul.host=${CONSUL_SERVICE_REGISTRY_CONTAINER_NAME}" diff --git a/docker/docker-compose.production.yml b/docker/docker-compose.production.yml deleted file mode 100644 index 651e040b..00000000 --- a/docker/docker-compose.production.yml +++ /dev/null @@ -1,240 +0,0 @@ -version: "3.7" - -################################################################################ -# ATTENTIONS of Docker Compose # -################################################################################ -# 1. Pattern of 'container_name' must be: # -# [service-name]-[system-short-name]-[environment-alias] # -# For instance, there is a 'MySQL service' for 'Muscle and Fitness Server', # -# the 'container_name' must be: mysql-maf.dev. # -# In Kubernetes, 'container_name' must not be set. # -# 2. ${TAG} is defined in file '.env'. # -# 3. The differences between each environment docker-compose.yml: # -# Environmental suffix. There are 4 types of environmental suffix: # -# * '.dev' # -# * '.test' # -# * '.stage' # -# * '.prod' # -# 4. Define timezone for environment variable: Asia/Hong_Kong # -# 5. Define 'depends_on' for service # -################################################################################ - -services: - ################################################################################ - # Middleware of Muscle and Fitness # - ################################################################################ - mysql: - container_name: maf.mysql.production - image: mysql:latest - environment: - MYSQL_ROOT_PASSWORD: "jm@mysql" - MYSQL_DATABASE: muscle_and_fitness - TZ: Asia/Hong_Kong - ports: - - "3306:3306" - restart: always - volumes: - - ~/docker-file-mapping/maf.mysql.production:/var/lib/mysql - - ./script/mysql-init-script:/docker-entrypoint-initdb.d - command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci - networks: - muscle_and_fitness_network: - - redis: - container_name: maf.redis.production - image: redis:latest - ports: - - "6379:6379" - restart: always - volumes: - - ~/docker-file-mapping/maf.redis.production:/data - - ./script/redis/redis.conf:/usr/local/etc/redis/redis.conf - environment: - TZ: Asia/Hong_Kong - command: "redis-server /usr/local/etc/redis/redis.conf" - networks: - muscle_and_fitness_network: - - atmoz-sftp: - container_name: maf.atmoz-sftp.production - image: atmoz/sftp:latest - ports: - - "23:22" - restart: always - volumes: - - ~/docker-file-mapping/maf.atmoz-sftp.production:/home/johnny/upload - environment: - TZ: Asia/Hong_Kong - command: "johnny:atmoz@sftp:::upload" - networks: - muscle_and_fitness_network: - - zipkin-mysql: - image: openzipkin/zipkin-mysql - container_name: maf.zipkin-mysql.production - restart: always - networks: - muscle_and_fitness_network: - - zipkin-dependencies: - image: openzipkin/zipkin-dependencies - container_name: maf.zipkin-dependencies.production - entrypoint: crond -f - environment: - # Uncomment to see dependency processing logs - ZIPKIN_LOG_LEVEL: DEBUG - STORAGE_TYPE: mysql - MYSQL_HOST: maf.zipkin-mysql.production - MYSQL_USER: zipkin - MYSQL_PASS: zipkin - depends_on: - zipkin-mysql: - condition: service_healthy - restart: always - networks: - muscle_and_fitness_network: - - zipkin: - container_name: maf.zipkin.production - image: openzipkin/zipkin - depends_on: - zipkin-mysql: - condition: service_healthy - # Environment settings are defined here https://github.com/openzipkin/zipkin/blob/master/zipkin-server/README.md#environment-variables - environment: - STORAGE_TYPE: mysql - # Point the zipkin at the storage backend - MYSQL_HOST: maf.zipkin-mysql.production - MYSQL_USER: zipkin - MYSQL_PASS: zipkin - # Uncomment to enable request logging (TRACE shows query values) - command: --logging.level.com.datastax.oss.driver.internal.core.tracker.RequestLogger=TRACE - JAVA_OPTS: -Xms128m -Xmx128m -XX:+ExitOnOutOfMemoryError - TZ: Asia/Hong_Kong - # Uncomment to enable scribe - # - SCRIBE_ENABLED=true - # Uncomment to enable self-tracing - # - SELF_TRACING_ENABLED=true - # Uncomment to enable debug logging - # - JAVA_OPTS=-Dlogging.level.zipkin2=DEBUG - ports: - # Port used for the Zipkin UI and HTTP Api - - 9411:9411 - # Uncomment if you set SCRIBE_ENABLED=true - # - 9410:9410 - restart: always - networks: - muscle_and_fitness_network: - - consul-service-registry: - container_name: maf.consul-service-registry.production - hostname: maf.consul-service-registry.production - image: consul:latest - depends_on: - zipkin: - condition: service_healthy - ports: - - "8500:8500" - restart: always - volumes: - - ~/docker-file-mapping/maf.consul-service-registry.production:/consul/data - command: "agent -server -ui -disable-host-node-id -bootstrap-expect=1 -client=0.0.0.0" - networks: - muscle_and_fitness_network: - - spring-boot-admin: - container_name: maf.spring-boot-admin.production - hostname: maf.spring-boot-admin.production - image: "ijohnnymiller/muscle-and-fitness-server.spring-boot-admin:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - ports: - - "8761:8761" - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - api-gateway: - container_name: maf.api-gateway.production - hostname: maf.api-gateway.production - image: "ijohnnymiller/muscle-and-fitness-server.api-gateway:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - ports: - - "8080:8080" - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - ################################################################################ - # Microservice of Muscle and Fitness # - ################################################################################ - # Business Service # - #------------------------------------------------------------------------------# - auth-center: - container_name: maf.auth-center.production - hostname: maf.auth-center.production - image: "ijohnnymiller/muscle-and-fitness-server.auth-center:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - exercise-mis: - container_name: maf.exercise-mis.production - hostname: maf.exercise-mis.production - image: "ijohnnymiller/muscle-and-fitness-server.exercise-mis:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - muscle-mis: - container_name: maf.muscle-mis.production - hostname: maf.muscle-mis.production - image: "ijohnnymiller/muscle-and-fitness-server.muscle-mis:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - -################################################################################ -# Network for Muscle and Fitness # -################################################################################ -networks: - muscle_and_fitness_network: - ipam: - driver: default diff --git a/docker/docker-compose.stage.yml b/docker/docker-compose.stage.yml deleted file mode 100644 index 8af9dc78..00000000 --- a/docker/docker-compose.stage.yml +++ /dev/null @@ -1,240 +0,0 @@ -version: "3.7" - -################################################################################ -# ATTENTIONS of Docker Compose # -################################################################################ -# 1. Pattern of 'container_name' must be: # -# [service-name]-[system-short-name]-[environment-alias] # -# For instance, there is a 'MySQL service' for 'Muscle and Fitness Server', # -# the 'container_name' must be: mysql-maf.dev. # -# In Kubernetes, 'container_name' must not be set. # -# 2. ${TAG} is defined in file '.env'. # -# 3. The differences between each environment docker-compose.yml: # -# Environmental suffix. There are 4 types of environmental suffix: # -# * '.dev' # -# * '.test' # -# * '.stage' # -# * '.prod' # -# 4. Define timezone for environment variable: Asia/Hong_Kong # -# 5. Define 'depends_on' for service # -################################################################################ - -services: - ################################################################################ - # Middleware of Muscle and Fitness # - ################################################################################ - mysql: - container_name: maf.mysql.stage - image: mysql:latest - environment: - MYSQL_ROOT_PASSWORD: "jm@mysql" - MYSQL_DATABASE: muscle_and_fitness - TZ: Asia/Hong_Kong - ports: - - "3306:3306" - restart: always - volumes: - - ~/docker-file-mapping/maf.mysql.stage:/var/lib/mysql - - ./script/mysql-init-script:/docker-entrypoint-initdb.d - command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci - networks: - muscle_and_fitness_network: - - redis: - container_name: maf.redis.stage - image: redis:latest - ports: - - "6379:6379" - restart: always - volumes: - - ~/docker-file-mapping/maf.redis.stage:/data - - ./script/redis/redis.conf:/usr/local/etc/redis/redis.conf - environment: - TZ: Asia/Hong_Kong - command: "redis-server /usr/local/etc/redis/redis.conf" - networks: - muscle_and_fitness_network: - - atmoz-sftp: - container_name: maf.atmoz-sftp.stage - image: atmoz/sftp:latest - ports: - - "23:22" - restart: always - volumes: - - ~/docker-file-mapping/maf.atmoz-sftp.stage:/home/johnny/upload - environment: - TZ: Asia/Hong_Kong - command: "johnny:atmoz@sftp:::upload" - networks: - muscle_and_fitness_network: - - zipkin-mysql: - image: openzipkin/zipkin-mysql - container_name: maf.zipkin-mysql.stage - restart: always - networks: - muscle_and_fitness_network: - - zipkin-dependencies: - image: openzipkin/zipkin-dependencies - container_name: maf.zipkin-dependencies.stage - entrypoint: crond -f - environment: - # Uncomment to see dependency processing logs - ZIPKIN_LOG_LEVEL: DEBUG - STORAGE_TYPE: mysql - MYSQL_HOST: maf.zipkin-mysql.production - MYSQL_USER: zipkin - MYSQL_PASS: zipkin - depends_on: - zipkin-mysql: - condition: service_healthy - restart: always - networks: - muscle_and_fitness_network: - - zipkin: - container_name: maf.zipkin.stage - image: openzipkin/zipkin - depends_on: - zipkin-mysql: - condition: service_healthy - # Environment settings are defined here https://github.com/openzipkin/zipkin/blob/master/zipkin-server/README.md#environment-variables - environment: - STORAGE_TYPE: mysql - # Point the zipkin at the storage backend - MYSQL_HOST: maf.zipkin-mysql.stage - MYSQL_USER: zipkin - MYSQL_PASS: zipkin - # Uncomment to enable request logging (TRACE shows query values) - command: --logging.level.com.datastax.oss.driver.internal.core.tracker.RequestLogger=TRACE - JAVA_OPTS: -Xms128m -Xmx128m -XX:+ExitOnOutOfMemoryError - TZ: Asia/Hong_Kong - # Uncomment to enable scribe - # - SCRIBE_ENABLED=true - # Uncomment to enable self-tracing - # - SELF_TRACING_ENABLED=true - # Uncomment to enable debug logging - # - JAVA_OPTS=-Dlogging.level.zipkin2=DEBUG - ports: - # Port used for the Zipkin UI and HTTP Api - - 9411:9411 - # Uncomment if you set SCRIBE_ENABLED=true - # - 9410:9410 - restart: always - networks: - muscle_and_fitness_network: - - consul-service-registry: - container_name: maf.consul-service-registry.stage - hostname: maf.consul-service-registry.stage - image: consul:latest - depends_on: - zipkin: - condition: service_healthy - ports: - - "8500:8500" - restart: always - volumes: - - ~/docker-file-mapping/maf.consul-service-registry.stage:/consul/data - command: "agent -server -ui -disable-host-node-id -bootstrap-expect=1 -client=0.0.0.0" - networks: - muscle_and_fitness_network: - - spring-boot-admin: - container_name: maf.spring-boot-admin.stage - hostname: maf.spring-boot-admin.stage - image: "ijohnnymiller/muscle-and-fitness-server.spring-boot-admin:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - ports: - - "8761:8761" - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - api-gateway: - container_name: maf.api-gateway.stage - hostname: maf.api-gateway.stage - image: "ijohnnymiller/muscle-and-fitness-server.api-gateway:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - ports: - - "8080:8080" - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - ################################################################################ - # Microservice of Muscle and Fitness # - ################################################################################ - # Business Service # - #------------------------------------------------------------------------------# - auth-center: - container_name: maf.auth-center.stage - hostname: maf.auth-center.stage - image: "ijohnnymiller/muscle-and-fitness-server.auth-center:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - exercise-mis: - container_name: maf.exercise-mis.stage - hostname: maf.exercise-mis.stage - image: "ijohnnymiller/muscle-and-fitness-server.exercise-mis:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - muscle-mis: - container_name: maf.muscle-mis.stage - hostname: maf.muscle-mis.stage - image: "ijohnnymiller/muscle-and-fitness-server.muscle-mis:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - -################################################################################ -# Network for Muscle and Fitness # -################################################################################ -networks: - muscle_and_fitness_network: - ipam: - driver: default diff --git a/docker/docker-compose.test.yml b/docker/docker-compose.test.yml deleted file mode 100644 index aa053852..00000000 --- a/docker/docker-compose.test.yml +++ /dev/null @@ -1,240 +0,0 @@ -version: "3.7" - -################################################################################ -# ATTENTIONS of Docker Compose # -################################################################################ -# 1. Pattern of 'container_name' must be: # -# [service-name]-[system-short-name]-[environment-alias] # -# For instance, there is a 'MySQL service' for 'Muscle and Fitness Server', # -# the 'container_name' must be: mysql-maf.dev. # -# In Kubernetes, 'container_name' must not be set. # -# 2. ${TAG} is defined in file '.env'. # -# 3. The differences between each environment docker-compose.yml: # -# Environmental suffix. There are 4 types of environmental suffix: # -# * '.dev' # -# * '.test' # -# * '.stage' # -# * '.prod' # -# 4. Define timezone for environment variable: Asia/Hong_Kong # -# 5. Define 'depends_on' for service # -################################################################################ - -services: - ################################################################################ - # Middleware of Muscle and Fitness # - ################################################################################ - mysql: - container_name: maf.mysql.test - image: mysql:latest - environment: - MYSQL_ROOT_PASSWORD: "jm@mysql" - MYSQL_DATABASE: muscle_and_fitness - TZ: Asia/Hong_Kong - ports: - - "3306:3306" - restart: always - volumes: - - ~/docker-file-mapping/maf.mysql.test:/var/lib/mysql - - ./script/mysql-init-script:/docker-entrypoint-initdb.d - command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci - networks: - muscle_and_fitness_network: - - redis: - container_name: maf.redis.test - image: redis:latest - ports: - - "6379:6379" - restart: always - volumes: - - ~/docker-file-mapping/maf.redis.test:/data - - ./script/redis/redis.conf:/usr/local/etc/redis/redis.conf - environment: - TZ: Asia/Hong_Kong - command: "redis-server /usr/local/etc/redis/redis.conf" - networks: - muscle_and_fitness_network: - - atmoz-sftp: - container_name: maf.atmoz-sftp.test - image: atmoz/sftp:latest - ports: - - "23:22" - restart: always - volumes: - - ~/docker-file-mapping/maf.atmoz-sftp.test:/home/johnny/upload - environment: - TZ: Asia/Hong_Kong - command: "johnny:atmoz@sftp:::upload" - networks: - muscle_and_fitness_network: - - zipkin-mysql: - image: openzipkin/zipkin-mysql - container_name: maf.zipkin-mysql.test - restart: always - networks: - muscle_and_fitness_network: - - zipkin-dependencies: - image: openzipkin/zipkin-dependencies - container_name: maf.zipkin-dependencies.test - entrypoint: crond -f - environment: - # Uncomment to see dependency processing logs - ZIPKIN_LOG_LEVEL: DEBUG - STORAGE_TYPE: mysql - MYSQL_HOST: maf.zipkin-mysql.production - MYSQL_USER: zipkin - MYSQL_PASS: zipkin - depends_on: - zipkin-mysql: - condition: service_healthy - restart: always - networks: - muscle_and_fitness_network: - - zipkin: - container_name: maf.zipkin.test - image: openzipkin/zipkin - depends_on: - zipkin-mysql: - condition: service_healthy - # Environment settings are defined here https://github.com/openzipkin/zipkin/blob/master/zipkin-server/README.md#environment-variables - environment: - STORAGE_TYPE: mysql - # Point the zipkin at the storage backend - MYSQL_HOST: maf.zipkin-mysql.test - MYSQL_USER: zipkin - MYSQL_PASS: zipkin - # Uncomment to enable request logging (TRACE shows query values) - command: --logging.level.com.datastax.oss.driver.internal.core.tracker.RequestLogger=TRACE - JAVA_OPTS: -Xms128m -Xmx128m -XX:+ExitOnOutOfMemoryError - TZ: Asia/Hong_Kong - # Uncomment to enable scribe - # - SCRIBE_ENABLED=true - # Uncomment to enable self-tracing - # - SELF_TRACING_ENABLED=true - # Uncomment to enable debug logging - # - JAVA_OPTS=-Dlogging.level.zipkin2=DEBUG - ports: - # Port used for the Zipkin UI and HTTP Api - - 9411:9411 - # Uncomment if you set SCRIBE_ENABLED=true - # - 9410:9410 - restart: always - networks: - muscle_and_fitness_network: - - consul-service-registry: - container_name: maf.consul-service-registry.test - hostname: maf.consul-service-registry.test - image: consul:latest - depends_on: - zipkin: - condition: service_healthy - ports: - - "8500:8500" - restart: always - volumes: - - ~/docker-file-mapping/maf.consul-service-test.stage:/consul/data - command: "agent -server -ui -disable-host-node-id -bootstrap-expect=1 -client=0.0.0.0" - networks: - muscle_and_fitness_network: - - spring-boot-admin: - container_name: maf.spring-boot-admin.test - hostname: maf.spring-boot-admin.test - image: "ijohnnymiller/muscle-and-fitness-server.spring-boot-admin:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - ports: - - "8761:8761" - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - api-gateway: - container_name: maf.api-gateway.test - hostname: maf.api-gateway.test - image: "ijohnnymiller/muscle-and-fitness-server.api-gateway:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - ports: - - "8080:8080" - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - ################################################################################ - # Microservice of Muscle and Fitness # - ################################################################################ - # Business Service # - #------------------------------------------------------------------------------# - auth-center: - container_name: maf.auth-center.test - hostname: maf.auth-center.test - image: "ijohnnymiller/muscle-and-fitness-server.auth-center:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - exercise-mis: - container_name: maf.exercise-mis.test - hostname: maf.exercise-mis.test - image: "ijohnnymiller/muscle-and-fitness-server.exercise-mis:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - - muscle-mis: - container_name: maf.muscle-mis.test - hostname: maf.muscle-mis.test - image: "ijohnnymiller/muscle-and-fitness-server.muscle-mis:${TAG}" - depends_on: - consul-service-registry: - condition: service_started - restart: always - volumes: - - ~/docker-file-mapping/maf.logs:/logs - environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=production - TZ: Asia/Hong_Kong - networks: - muscle_and_fitness_network: - -################################################################################ -# Network for Muscle and Fitness # -################################################################################ -networks: - muscle_and_fitness_network: - ipam: - driver: default diff --git a/docker/docker-compose.development-docker.yml b/docker/docker-compose.yml similarity index 83% rename from docker/docker-compose.development-docker.yml rename to docker/docker-compose.yml index ce648dae..9a9542d3 100644 --- a/docker/docker-compose.development-docker.yml +++ b/docker/docker-compose.yml @@ -24,7 +24,7 @@ services: # Middleware of Muscle and Fitness # ################################################################################ mysql: - container_name: maf.mysql.development + container_name: "${MYSQL_CONTAINER_NAME}" image: mysql:latest environment: MYSQL_ROOT_PASSWORD: "jm@mysql" @@ -41,7 +41,7 @@ services: muscle_and_fitness_network: redis: - container_name: maf.redis.development + container_name: "${REDIS_CONTAINER_NAME}" image: redis:latest ports: - "6379:6379" @@ -56,7 +56,7 @@ services: muscle_and_fitness_network: atmoz-sftp: - container_name: maf.atmoz-sftp.development + container_name: "${ATMOZ_SFTP_CONTAINER_NAME}" image: atmoz/sftp:latest ports: - "23:22" @@ -71,20 +71,20 @@ services: zipkin-mysql: image: openzipkin/zipkin-mysql - container_name: maf.zipkin-mysql.development + container_name: "${ZIPKIN_MYSQL_CONTAINER_NAME}" restart: always networks: muscle_and_fitness_network: zipkin-dependencies: image: openzipkin/zipkin-dependencies - container_name: maf.zipkin-dependencies.development + container_name: "${ZIPKIN_DEPENDENCIES_CONTAINER_NAME}" entrypoint: crond -f environment: # Uncomment to see dependency processing logs ZIPKIN_LOG_LEVEL: DEBUG STORAGE_TYPE: mysql - MYSQL_HOST: maf.zipkin-mysql.development + MYSQL_HOST: "${ZIPKIN_MYSQL_CONTAINER_NAME}" MYSQL_USER: zipkin MYSQL_PASS: zipkin depends_on: @@ -95,7 +95,7 @@ services: muscle_and_fitness_network: zipkin: - container_name: maf.zipkin.development + container_name: "${ZIPKIN_CONTAINER_NAME}" image: openzipkin/zipkin depends_on: zipkin-mysql: @@ -104,7 +104,7 @@ services: environment: STORAGE_TYPE: mysql # Point the zipkin at the storage backend - MYSQL_HOST: maf.zipkin-mysql.development + MYSQL_HOST: "${ZIPKIN_MYSQL_CONTAINER_NAME}" MYSQL_USER: zipkin MYSQL_PASS: zipkin # Uncomment to enable request logging (TRACE shows query values) @@ -127,8 +127,8 @@ services: muscle_and_fitness_network: consul-service-registry: - container_name: maf.consul-service-registry.development - hostname: maf.consul-service-registry.development + container_name: "${CONSUL_SERVICE_REGISTRY_CONTAINER_NAME}" + hostname: "${CONSUL_SERVICE_REGISTRY_CONTAINER_NAME}" image: consul:latest depends_on: zipkin: @@ -137,14 +137,14 @@ services: - "8500:8500" restart: always volumes: - - ~/docker-file-mapping/maf.consul-service-registry.development:/consul/data + - "~/docker-file-mapping/${CONSUL_SERVICE_REGISTRY_CONTAINER_NAME}:/consul/data" command: "agent -server -ui -disable-host-node-id -bootstrap-expect=1 -client=0.0.0.0" networks: muscle_and_fitness_network: spring-boot-admin: - container_name: maf.spring-boot-admin.development - hostname: maf.spring-boot-admin.development + container_name: "${SPRING_BOOT_ADMIN_CONTAINER_NAME}" + hostname: "${SPRING_BOOT_ADMIN_CONTAINER_NAME}" image: "ijohnnymiller/muscle-and-fitness-server.spring-boot-admin:${TAG}" depends_on: consul-service-registry: @@ -155,14 +155,14 @@ services: volumes: - ~/docker-file-mapping/maf.logs:/logs environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=development-docker + JAVA_TOOL_OPTIONS: "${JAVA_TOOL_OPTIONS}" TZ: Asia/Hong_Kong networks: muscle_and_fitness_network: api-gateway: - container_name: maf.api-gateway.development - hostname: maf.api-gateway.development + container_name: "${API_GATEWAY_CONTAINER_NAME}" + hostname: "${API_GATEWAY_CONTAINER_NAME}" image: "ijohnnymiller/muscle-and-fitness-server.api-gateway:${TAG}" depends_on: consul-service-registry: @@ -173,7 +173,7 @@ services: volumes: - ~/docker-file-mapping/maf.logs:/logs environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=development-docker + JAVA_TOOL_OPTIONS: "${JAVA_TOOL_OPTIONS}" TZ: Asia/Hong_Kong networks: muscle_and_fitness_network: @@ -184,8 +184,8 @@ services: # Business Service # #------------------------------------------------------------------------------# auth-center: - container_name: maf.auth-center.development - hostname: maf.auth-center.development + container_name: "${AUTH_CENTER_CONTAINER_NAME}" + hostname: "${AUTH_CENTER_CONTAINER_NAME}" image: "ijohnnymiller/muscle-and-fitness-server.auth-center:${TAG}" depends_on: consul-service-registry: @@ -194,14 +194,14 @@ services: volumes: - ~/docker-file-mapping/maf.logs:/logs environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=development-docker + JAVA_TOOL_OPTIONS: "${JAVA_TOOL_OPTIONS}" TZ: Asia/Hong_Kong networks: muscle_and_fitness_network: exercise-mis: - container_name: maf.exercise-mis.development - hostname: maf.exercise-mis.development + container_name: "${EXERCISE_MIS_CONTAINER_NAME}" + hostname: "${EXERCISE_MIS_CONTAINER_NAME}" image: "ijohnnymiller/muscle-and-fitness-server.exercise-mis:${TAG}" depends_on: consul-service-registry: @@ -210,14 +210,14 @@ services: volumes: - ~/docker-file-mapping/maf.logs:/logs environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=development-docker + JAVA_TOOL_OPTIONS: "${JAVA_TOOL_OPTIONS}" TZ: Asia/Hong_Kong networks: muscle_and_fitness_network: muscle-mis: - container_name: maf.muscle-mis.development - hostname: maf.muscle-mis.development + container_name: "${MUSCLE_MIS_CONTAINER_NAME}" + hostname: "${MUSCLE_MIS_CONTAINER_NAME}" image: "ijohnnymiller/muscle-and-fitness-server.muscle-mis:${TAG}" depends_on: consul-service-registry: @@ -226,7 +226,7 @@ services: volumes: - ~/docker-file-mapping/maf.logs:/logs environment: - JAVA_TOOL_OPTIONS: -Xms128m -Xmx128m -Dspring.profiles.active=development-docker + JAVA_TOOL_OPTIONS: "${JAVA_TOOL_OPTIONS}" TZ: Asia/Hong_Kong networks: muscle_and_fitness_network: diff --git a/exercise-mis/src/main/resources/application-development-docker.yml b/exercise-mis/src/main/resources/application-development-docker.yml index 635ac732..3813c06b 100644 --- a/exercise-mis/src/main/resources/application-development-docker.yml +++ b/exercise-mis/src/main/resources/application-development-docker.yml @@ -1,21 +1,21 @@ spring: zipkin: - base-url: http://maf.zipkin.development:9411 + base-url: http://maf.zipkin.development-local:9411 devtools: add-properties: true datasource: - url: jdbc:mysql://maf.mysql.development:3306/muscle_and_fitness?useSSL=true&useUnicode=true + url: jdbc:mysql://maf.mysql.development-local:3306/muscle_and_fitness?useSSL=true&useUnicode=true username: root password: jm@mysql redis: - host: maf.redis.development + host: maf.redis.development-local port: 6379 password: 123456 sftp: client: configuration: - host: maf.atmoz-sftp.development + host: maf.atmoz-sftp.development-local port: 22 user: johnny password: atmoz@sftp diff --git a/muscle-mis/src/main/resources/application-development-docker.yml b/muscle-mis/src/main/resources/application-development-docker.yml index 635ac732..3813c06b 100644 --- a/muscle-mis/src/main/resources/application-development-docker.yml +++ b/muscle-mis/src/main/resources/application-development-docker.yml @@ -1,21 +1,21 @@ spring: zipkin: - base-url: http://maf.zipkin.development:9411 + base-url: http://maf.zipkin.development-local:9411 devtools: add-properties: true datasource: - url: jdbc:mysql://maf.mysql.development:3306/muscle_and_fitness?useSSL=true&useUnicode=true + url: jdbc:mysql://maf.mysql.development-local:3306/muscle_and_fitness?useSSL=true&useUnicode=true username: root password: jm@mysql redis: - host: maf.redis.development + host: maf.redis.development-local port: 6379 password: 123456 sftp: client: configuration: - host: maf.atmoz-sftp.development + host: maf.atmoz-sftp.development-local port: 22 user: johnny password: atmoz@sftp diff --git a/spring-boot-admin/src/main/resources/application-development-docker.yml b/spring-boot-admin/src/main/resources/application-development-docker.yml index fd36a358..253f75fb 100644 --- a/spring-boot-admin/src/main/resources/application-development-docker.yml +++ b/spring-boot-admin/src/main/resources/application-development-docker.yml @@ -2,13 +2,13 @@ spring: devtools: add-properties: true zipkin: - base-url: http://maf.zipkin.development:9411 + base-url: http://maf.zipkin.development-local:9411 datasource: - url: jdbc:mysql://maf.mysql.development:3306/muscle_and_fitness?useSSL=true&useUnicode=true + url: jdbc:mysql://maf.mysql.development-local:3306/muscle_and_fitness?useSSL=true&useUnicode=true username: root password: jm@mysql redis: - host: maf.redis.development + host: maf.redis.development-local port: 6379 password: 123456 @@ -19,7 +19,7 @@ maf: sftp: client: configuration: - host: maf.atmoz-sftp.development + host: maf.atmoz-sftp.development-local port: 22 user: johnny password: atmoz@sftp