add file

parent 695a34d8
#!/bin/bash
cd ../SKB-Admin/
sh build.sh
cd ../SKB-Edge-OAuth2/
sh build.sh
cd ../SKB-Portal-Backend/
sh build.sh
\ No newline at end of file
version: "3.4"
services:
shellinabox:
image: sspreitzer/shellinabox
restart: always
ports:
- 4200:4200
networks:
- skbframework_skb-net
hostname: shellinabox
container_name: shellinabox
environment:
TZ: Asia/Kuala_Lumpur
SIAB_USER: skbmaster
SIAB_PASSWORD: S3cret
SIAB_HOME: /home/mbkmaster
SIAB_SUDO: "true"
SIAB_SSL: "false"
apixpressv1:
image: repo.cybersolution.com.my:9005/apixpress:1.0.5
restart: unless-stopped
ports:
- 9815:9815
- 9816:9816
networks:
- skbframework_skb-net
hostname: apixpressv1
container_name: apixpressv1
environment:
TZ: Asia/Kuala_Lumpur
APIXPRESS_DB_HOST: 172.16.0.67
APIXPRESS_DB_PORT: 3306
APIXPRESS_DB_USER: root
APIXPRESS_DB_PASSWORD: Dar3D3^1L
APIXPRESS_LOGGER_LEVEL: info
econfigservice:
image: repo.cybersolution.com.my:9005/econfigservice:1.0
restart: always
# ports:
# - 9002:9002
networks:
- skbframework_skb-net
hostname: econfigservice
container_name: econfigservice
environment:
- TZ=Asia/Kuala_Lumpur
- APP_INTERNAL_PORT=9002
- GIT_CONFIG_ADDRESS=http://gitlab.cybersolution.com.my/skb/configrepo.git
# - GIT_CONFIG_ADDRESS=http://192.168.4.238/skb/configrepo.git
- GIT_CONFIG_USERNAME=siddiq
- GIT_CONFIG_PASSWORD=Ctsb@2018
# eadminservice:
# image: skbmpk.cybersolution.com.my:9005/eadminservice:1.0.0
# restart: always
# ports:
# - 9003:9003
# networks:
# - skbframework_skb-net
# depends_on:
# - econfigservice
# hostname: eadminservice
# container_name: eadminservice
# environment:
# - LOGSPOUT=ignore
# - TZ=Asia/Kuala_Lumpur
# - WAIT_HOSTS=econfigservice:9002
# - APP_INTERNAL_PORT=9003
# - SB_CONFIG_BRANCH=master
# - SB_CONFIG_PROFILE=default
# - SB_CONFIG_SCHEME=http
# - SB_CONFIG_ADDRESS=econfigservice
# - SB_CONFIG_PORT=9002
# - SB_ADMIN_PROFILE=Cloud
# - SB_ADMIN_USERNAME=admin
# - SB_ADMIN_PASSWORD=Ctsb@2018
# - SB_ADMIN_MS_TEAM_HOOK=https://outlook.office.com/webhook/159b5bd2-7107-47c0-b649-2935047245dd@1f279f66-451c-4357-b5ea-e2903910dd64/IncomingWebhook/87b8acfd80584848a7a09cda3f5926b1/02ea36db-6639-47ef-93dd-6f3d60dfbcb3
ediscovery:
image: repo.cybersolution.com.my:9005/ediscovery:1.0.0
restart: always
# ports:
# - 9010:9010
networks:
- skbframework_skb-net
hostname: ediscovery
container_name: ediscovery
environment:
- TZ=Asia/Kuala_Lumpur
- WAIT_HOSTS=econfigservice:9002
- APP_INTERNAL_PORT=9010
- SB_CONFIG_ADDRESS=econfigservice
- SB_CONFIG_PORT=9002
redis:
image: redis
restart: always
command: ["redis-server", "--appendonly", "yes"]
ports:
- 9012:6379
networks:
- skbframework_skb-net
hostname: redis
container_name: redis
volumes:
- redis_data:/data
rabbitmq:
image: rabbitmq:3-management
restart: always
ports:
- 15672:15672
- 5672:5672
networks:
- skbframework_skb-net
container_name: rabbitmq
mongo-express:
image: mongo-express
restart: always
ports:
- 9014:8081
networks:
- skbframework_skb-net
container_name: mongo-express
environment:
- TZ=Asia/Kuala_Lumpur
- ME_CONFIG_MONGODB_SERVER=172.16.0.67
- ME_CONFIG_MONGODB_PORT=27017
- ME_CONFIG_MONGODB_ENABLE_ADMIN=true
# - ME_CONFIG_MONGODB_AUTH_DATABASE=admin
# - ME_CONFIG_MONGODB_AUTH_USERNAME=root
# - ME_CONFIG_MONGODB_AUTH_PASSWORD=Dar3D3^1L
- ME_CONFIG_MONGODB_ADMINUSERNAME=root
- ME_CONFIG_MONGODB_ADMINPASSWORD=Dar3D3^1L
- ME_CONFIG_BASICAUTH_USERNAME=admin
- ME_CONFIG_BASICAUTH_PASSWORD=Ctsb@2021
i18nservice:
image: repo.cybersolution.com.my:9005/skb/i18nservice:1.1.4
restart: always
ports:
- 3000:3000
networks:
- skbframework_skb-net
hostname: i18nservice
container_name: i18nservice
environment:
- TZ=Asia/Kuala_Lumpur
- APP_INTERNAL_HOST=0.0.0.0
- APP_INTERNAL_PORT=3000
- APP_CONTEXT_PATH=/i18nservice
- GITLAB_BRANCH=master
- GITLAB_TOKEN=Au2aUx-T4TEggyyxD3pp
- GITLAB_URL=http://gitlab.cybersolution.com.my/skb/static/i18nrepo/raw/{branch}/{module}/{lang}.json?private_token={token}
- GITLAB_DEFAULT_DIR=default
- REDIS_HOST=redis
- REDIS_PORT=6379
eloggingservice:
image: repo.cybersolution.com.my:9005/skb/eloggingservice:1.0.14
restart: always
ports:
- 3001:3000
networks:
- skbframework_skb-net
depends_on:
# - mongo
- rabbitmq
hostname: eloggingservice
container_name: eloggingservice
environment:
- TZ=Asia/Kuala_Lumpur
- APP_INTERNAL_HOST=0.0.0.0
- APP_INTERNAL_PORT=3000
- APP_CONTEXT_PATH=/eloggingservice
- MONGODB_HOST=172.16.0.67
- MONGODB_PORT=27017
- MONGODB_USERNAME=root
- MONGODB_PASSWORD=Dar3D3^1L
- RABBITMQ_HOST=rabbitmq
- RABBITMQ_PORT=5672
- I18SERVICE=http://i18nservice:3000/i18n/language
barcodeservice:
image: repo.cybersolution.com.my:9005/skb/barcodeservice:1.0.1
restart: always
ports:
- 3002:3000
networks:
- skbframework_skb-net
hostname: barcodeservice
container_name: barcodeservice
environment:
- TZ=Asia/Kuala_Lumpur
- APP_INTERNAL_HOST=0.0.0.0
- APP_INTERNAL_PORT=3000
- APP_CONTEXT_PATH=/barcodeservice
############# NGINX Config #############
nginx:
image: nginx:1.25-alpine
hostname: nginx
container_name: nginx
restart: on-failure
ports:
- 80:80
- 443:443
networks:
skbframework_skb-net:
aliases:
- sandboxskb.mpklang.gov.my
volumes:
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- type: bind
source: ./https/cert.crt
target: /etc/nginx/cert.crt
- type: bind
source: ./https/cert.key
target: /etc/nginx/cert.key
############# KONG Config #############
postgreskong:
image: postgres:9-alpine
restart: always
healthcheck:
test: ["CMD", "pg_isready", "-U", "kong"]
interval: 30s
timeout: 30s
retries: 3
# ports:
# - 9020:5432
networks:
- skbframework_skb-net
hostname: postgreskong
container_name: postgreskong
volumes:
- postgreskong_data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=kong
- POSTGRES_PASSWORD=kong
- POSTGRES_USER=kong
kongmigration:
image: kong:1.2.1-alpine
hostname: kongmigration
container_name: kongmigration
command: kong migrations bootstrap
networks:
- skbframework_skb-net
depends_on:
- postgreskong
environment:
- KONG_DATABASE=postgres
- KONG_PG_DATABASE=kong
- KONG_PG_HOST=postgreskong
- KONG_PG_PASSWORD=kong
- KONG_PG_USER=kong
kong:
image: kong:1.2.1-alpine
hostname: kong
container_name: kong
restart: always
healthcheck:
test: ["CMD", "kong", "health"]
interval: 10s
timeout: 10s
retries: 10
ports:
- 8000:8000 # proxy
- 8443:8443 # proxy ssl
- 9017:8001 # admin api
- 9018:8444 # admin api ssl
networks:
- skbframework_skb-net
depends_on:
- postgreskong
volumes:
- type: bind
source: ./https/cert.crt
target: /cert.crt
- type: bind
source: ./https/cert.key
target: /cert.key
environment:
- KONG_SSL_CERT=cert.crt
- KONG_SSL_CERT_KEY=cert.key
- KONG_ADMIN_SSL_CERT=cert.crt
- KONG_ADMIN_SSL_CERT_KEY=cert.key
- KONG_DATABASE=postgres
- KONG_PG_DATABASE=kong
- KONG_PG_HOST=postgreskong
- KONG_PG_PASSWORD=kong
- KONG_PG_USER=kong
- KONG_PROXY_LISTEN=0.0.0.0:8000, 0.0.0.0:8443 http2 ssl
- KONG_PROXY_ACCESS_LOG=/dev/stdout
- KONG_PROXY_ERROR_LOG=/dev/stderr
- KONG_ADMIN_LISTEN=0.0.0.0:8001, 0.0.0.0:8444 http2 ssl
- KONG_ADMIN_ACCESS_LOG=/dev/stdout
- KONG_ADMIN_ERROR_LOG=/dev/stderr
############# KONGA Config #############
konga:
image: pantsel/konga:0.14.4
hostname: konga
container_name: konga
restart: always
# ports:
# - 9019:1337
networks:
- skbframework_skb-net
depends_on:
# - kong
- kongaprepare
volumes:
- konga_data:/app/kongadata
environment:
- BASE_URL=/konga/
- DB_ADAPTER=postgres
- DB_HOST=postgreskong
- DB_USER=kong
- DB_PASSWORD=kong
- DB_DATABASE=kongadb
- KONGA_HOOK_TIMEOUT=120000
- NODE_ENV=production
kongaprepare:
image: pantsel/konga
hostname: kongaprepare
container_name: kongaprepare
command: -c prepare -a postgres -u postgresql://kong:kong@postgreskong:5432/kongadb
networks:
- skbframework_skb-net
depends_on:
- postgreskong
environment:
- DB_ADAPTER=postgres
- DB_HOST=postgreskong
- DB_USER=kong
- DB_PASSWORD=kong
- DB_DATABASE=kongdb
# ############# Percone PMM #############
pmmdata:
image: percona/pmm-server:latest
command: ["/bin/true"]
networks:
- skbframework_skb-net
hostname: pmmdata
container_name: pmmdata
volumes:
- /opt/prometheus/data
- /opt/consul-data
- /var/lib/mysql
- /var/lib/grafana
pmmserver:
image: percona/pmm-server:latest
restart: always
ports:
- 9013:80
networks:
- skbframework_skb-net
hostname: pmmserver
container_name: pmmserver
volumes:
- /opt/prometheus/data
- /opt/consul-data
- /var/lib/mysql
- /var/lib/grafana
############# Portainer Config #############
portainer:
image: portainer/portainer
restart: always
# ports:
# - 8000:8000
# - 9000:9000
networks:
- skbframework_skb-net
hostname: portainer
container_name: portainer
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
############# HTTPBin #############
httpbin:
image: kennethreitz/httpbin
restart: always
# ports:
# - 80:80
networks:
- skbframework_skb-net
hostname: httpbin
container_name: httpbin
data-api:
image: repo.cybersolution.com.my:9005/ctsb.io/data-api:1.0.0
restart: always
ports:
- 5051:8080
networks:
- skbframework_skb-net
hostname: data-api
container_name: data-api
environment:
TZ: Asia/Kuala_Lumpur
MYSQL_HOST: 172.16.0.67
MYSQL_PORT: 3306
MYSQL_USER: root
MYSQL_PASSWORD: Dar3D3^1L
SPRING_WEBFLUX_BASE_PATH: /data-api
volumes:
redis_data:
postgreskong_data:
konga_data:
portainer_data:
networks:
skbframework_skb-net:
external: true
\ No newline at end of file
version: "3.4"
services:
keycloak:
image: jboss/keycloak:4.8.1.Final
restart: always
# ports:
# - 9001:8080
# - 9008:8443
networks:
- skb-net
hostname: keycloak
container_name: keycloak
volumes:
# themes > base
- type: bind
source: ./skb-keycloak-4_8_1/themes/base/login/messages
target: /opt/jboss/keycloak/themes/base/login/messages
- type: bind
source: ./skb-keycloak-4_8_1/themes/base/login/login.ftl
target: /opt/jboss/keycloak/themes/base/login/login.ftl
- type: bind
source: ./skb-keycloak-4_8_1/themes/base/login/template.ftl
target: /opt/jboss/keycloak/themes/base/login/template.ftl
- type: bind
source: ./skb-keycloak-4_8_1/themes/base/login/theme.properties
target: /opt/jboss/keycloak/themes/base/login/theme.properties
# themes > skb
- type: bind
source: ./skb-keycloak-4_8_1/themes/skb
target: /opt/jboss/keycloak/themes/skb
# SSL
- type: bind
source: ./skb-keycloak-4_8_1/META-INF/keycloak-themes.json
target: /opt/jboss/keycloak/standalone/deployments/META-INF/keycloak-themes.json
# SSL
#- type: bind
# source: ./https/cert.crt
# target: /etc/x509/https/tls.crt
#- type: bind
# source: ./https/cert.key
# target: /etc/x509/https/tls.key
# Config
- type: bind
source: ./skb-keycloak-4_8_1/standalone_4_8_1.xml
target: /opt/jboss/keycloak/standalone/configuration/standalone.xml
environment:
- TZ=Asia/Kuala_Lumpur
- KEYCLOAK_USER=admin
- KEYCLOAK_PASSWORD=Ctsb@2018
- KEYCLOAK_LOGLEVEL=ALL
- PROXY_ADDRESS_FORWARDING=true
- DB_VENDOR=MYSQL
- DB_ADDR=172.16.0.67
- DB_PORT=3306
- DB_DATABASE=keycloak481db
- DB_USER=root
- DB_PASSWORD=Dar3D3^1L
networks:
skb-net:
\ No newline at end of file
#!/bin/bash
sleepTime=${1:-5s}
echo "Docker Registry Login."
docker login -u=skb -p=Ctsb@2018 https://repo.cybersolution.com.my:9005/v2/
echo "Run Infrastructure."
docker-compose -f docker-compose-infra.yml -p skbframework up -d
echo "Sleeping for "$sleepTime
sleep $sleepTime
echo "Done."
echo "Run Framework."
docker-compose -f docker-compose-frame.yml -p skbframework up -d
echo "Sleeping for "$sleepTime
sleep $sleepTime
echo "Done."
echo "Run Services."
docker-compose -f docker-compose.yml -p skbframework up -d
\ No newline at end of file
#!/bin/bash
echo "Down docker-compose.yml"
docker-compose -f docker-compose.yml -p skbframework down
echo "Down docker-compose-frame.yml"
docker-compose -f docker-compose-frame.yml -p skbframework down
echo "Down docker-compose-infra.yml"
docker-compose -f docker-compose-infra.yml -p skbframework down
\ No newline at end of file
#!/bin/bash
# echo "Down docker-compose.yml"
# docker-compose -f docker-compose.yml -p skbframework down
# echo "Down docker-compose-frame.yml"
# docker-compose -f docker-compose-frame.yml -p skbframework down
# echo "Down docker-compose-infra.yml"
# docker-compose -f docker-compose-infra.yml -p skbframework down
docker stack rm skbframework
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment