feat: 적용 무중단 배포 시스템 (Blue-Green Deployment)
Some checks failed
Deploy to OCIWP / deploy (push) Failing after 51s
Some checks failed
Deploy to OCIWP / deploy (push) Failing after 51s
This commit is contained in:
@@ -11,12 +11,59 @@ services:
|
||||
timeout: 3s
|
||||
retries: 5
|
||||
|
||||
gateway:
|
||||
mci-mock:
|
||||
image: wiremock/wiremock:latest
|
||||
ports:
|
||||
- "8089:8080"
|
||||
volumes:
|
||||
- ./mci-mock:/home/wiremock
|
||||
|
||||
dozzle:
|
||||
image: amir20/dozzle:latest
|
||||
ports:
|
||||
- "8288:8080"
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /home/ubuntu/app/ax_hub_mcp_tool:/app
|
||||
restart: always
|
||||
|
||||
gitea-runner:
|
||||
image: gitea/act_runner:latest
|
||||
environment:
|
||||
- GITEA_INSTANCE_URL=https://git.devjun.net
|
||||
- GITEA_RUNNER_REGISTRATION_TOKEN=2N7ciuFIp6Jm29ewtzfl9ruQtpwGgB4ngFcXC2lF
|
||||
- GITEA_RUNNER_NAME=ociwp-runner
|
||||
- GLOW_COMMUNICATION_EXTMCI_PORT=8080
|
||||
- GITEA_RUNNER_LABELS=ubuntu-latest,ubuntu-22.04,linux-arm64
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /home/ubuntu/app/ax_hub_mcp_tool:/app
|
||||
- ./act_runner_data:/data
|
||||
- ./bin/docker:/usr/bin/docker
|
||||
- /usr/libexec/docker/cli-plugins/docker-compose:/usr/libexec/docker/cli-plugins/docker-compose
|
||||
restart: always
|
||||
|
||||
nginx:
|
||||
image: nginx:latest
|
||||
ports:
|
||||
- "8281:8281"
|
||||
- "8282:8282"
|
||||
- "8283:8283"
|
||||
- "8284:8284"
|
||||
- "8285:8285"
|
||||
volumes:
|
||||
- ./nginx/conf.d:/etc/nginx/conf.d
|
||||
depends_on:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
# ==========================================
|
||||
# BLUE SERVICES
|
||||
# ==========================================
|
||||
gateway-blue:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-gateway/Dockerfile
|
||||
ports:
|
||||
- "8281:8081"
|
||||
volumes:
|
||||
- ./:/src
|
||||
depends_on:
|
||||
@@ -32,19 +79,10 @@ services:
|
||||
- JAVA_TOOL_OPTIONS=-Xms64m -Xmx384m
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
mci-mock:
|
||||
image: wiremock/wiremock:latest
|
||||
ports:
|
||||
- "8089:8080"
|
||||
volumes:
|
||||
- ./mci-mock:/home/wiremock
|
||||
|
||||
tool-sms:
|
||||
tool-sms-blue:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-sms/Dockerfile
|
||||
ports:
|
||||
- "8282:8082"
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
@@ -52,9 +90,9 @@ services:
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway:8081
|
||||
- AXHUB_GATEWAY_URL=http://gateway-blue:8081
|
||||
- AXHUB_SOURCE_DIR=/src
|
||||
- AXHUB_TOOL_URL=http://tool-sms:8082
|
||||
- AXHUB_TOOL_URL=http://tool-sms-blue:8082
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
@@ -63,12 +101,10 @@ services:
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
tool-email:
|
||||
tool-email-blue:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-email/Dockerfile
|
||||
ports:
|
||||
- "8283:8083"
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
@@ -76,8 +112,8 @@ services:
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway:8081
|
||||
- AXHUB_TOOL_URL=http://tool-email:8083
|
||||
- AXHUB_GATEWAY_URL=http://gateway-blue:8081
|
||||
- AXHUB_TOOL_URL=http://tool-email-blue:8083
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
@@ -86,12 +122,10 @@ services:
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
tool-other:
|
||||
tool-other-blue:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-other/Dockerfile
|
||||
ports:
|
||||
- "8284:8084"
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
@@ -99,8 +133,8 @@ services:
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway:8081
|
||||
- AXHUB_TOOL_URL=http://tool-other:8084
|
||||
- AXHUB_GATEWAY_URL=http://gateway-blue:8081
|
||||
- AXHUB_TOOL_URL=http://tool-other-blue:8084
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
@@ -109,12 +143,10 @@ services:
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
tool-payment:
|
||||
tool-payment-blue:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-payment/Dockerfile
|
||||
ports:
|
||||
- "8285:8085"
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
@@ -122,8 +154,8 @@ services:
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway:8081
|
||||
- AXHUB_TOOL_URL=http://tool-payment:8085
|
||||
- AXHUB_GATEWAY_URL=http://gateway-blue:8081
|
||||
- AXHUB_TOOL_URL=http://tool-payment-blue:8085
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
@@ -132,28 +164,109 @@ services:
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
dozzle:
|
||||
image: amir20/dozzle:latest
|
||||
ports:
|
||||
- "8288:8080"
|
||||
# ==========================================
|
||||
# GREEN SERVICES
|
||||
# ==========================================
|
||||
gateway-green:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-gateway/Dockerfile
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /home/ubuntu/app/ax_hub_mcp_tool:/app
|
||||
restart: always
|
||||
|
||||
gitea-runner:
|
||||
image: gitea/act_runner:latest
|
||||
- ./:/src
|
||||
depends_on:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- GITEA_INSTANCE_URL=https://git.devjun.net
|
||||
- TZ=Asia/Seoul
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_HOST=redis
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_SOURCE_DIR=/src
|
||||
- JAVA_TOOL_OPTIONS=-Xms64m -Xmx384m
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
- GITEA_RUNNER_REGISTRATION_TOKEN=2N7ciuFIp6Jm29ewtzfl9ruQtpwGgB4ngFcXC2lF
|
||||
- GITEA_RUNNER_NAME=ociwp-runner
|
||||
tool-sms-green:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-sms/Dockerfile
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
- TZ=Asia/Seoul
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway-green:8081
|
||||
- AXHUB_SOURCE_DIR=/src
|
||||
- AXHUB_TOOL_URL=http://tool-sms-green:8082
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EXTMCI_PORT=8080
|
||||
- GITEA_RUNNER_LABELS=ubuntu-latest,ubuntu-22.04,linux-arm64
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /home/ubuntu/app/ax_hub_mcp_tool:/app
|
||||
- ./act_runner_data:/data
|
||||
- ./bin/docker:/usr/bin/docker
|
||||
- /usr/libexec/docker/cli-plugins/docker-compose:/usr/libexec/docker/cli-plugins/docker-compose
|
||||
restart: always
|
||||
- GLOW_COMMUNICATION_EAI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
tool-email-green:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-email/Dockerfile
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
- TZ=Asia/Seoul
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway-green:8081
|
||||
- AXHUB_TOOL_URL=http://tool-email-green:8083
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EXTMCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EAI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
tool-other-green:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-other/Dockerfile
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
- TZ=Asia/Seoul
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway-green:8081
|
||||
- AXHUB_TOOL_URL=http://tool-other-green:8084
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EXTMCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EAI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
|
||||
tool-payment-green:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dap-tool-payment/Dockerfile
|
||||
depends_on:
|
||||
- redis
|
||||
environment:
|
||||
- TZ=Asia/Seoul
|
||||
- SPRING_REDIS_HOST=redis
|
||||
- SPRING_REDIS_PORT=6379
|
||||
- SPRING_DATA_REDIS_PORT=6379
|
||||
- AXHUB_GATEWAY_URL=http://gateway-green:8081
|
||||
- AXHUB_TOOL_URL=http://tool-payment-green:8085
|
||||
- GLOW_COMMUNICATION_MCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_MCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EXTMCI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EXTMCI_PORT=8080
|
||||
- GLOW_COMMUNICATION_EAI_HOMT=http://mci-mock
|
||||
- GLOW_COMMUNICATION_EAI_PORT=8080
|
||||
- SPRING_PROFILES_ACTIVE=${ACTIVE_PROFILE:-local}
|
||||
Reference in New Issue
Block a user