update deploy scripts with metrics

update xaibox to be single image
This commit is contained in:
2018-08-20 21:23:29 -04:00
parent 1e4a882f8d
commit 1cd5efe697
14 changed files with 84 additions and 16 deletions

View File

@@ -2,13 +2,13 @@
docker login -u richard -p $DKREGISTRY_PASS $DKREGISTRY docker login -u richard -p $DKREGISTRY_PASS $DKREGISTRY
(cd nextcloud && docker-compose -f docker-compose-build.yml build) (cd nextcloud && docker-compose -f docker-compose-mono.yml build)
(cd sslproxy && docker-compose -f docker-compose.yml build) (cd sslproxy && docker-compose -f docker-compose.yml build)
(cd letsencrypt && docker-compose -f docker-compose.yml build) (cd letsencrypt && docker-compose -f docker-compose.yml build)
(cd prometheus && docker-compose -f docker-compose.yml build) (cd prometheus && docker-compose -f docker-compose.yml build)
docker push dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest docker push dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest
docker push dkregistry.xai-corp.net:5000/xaicorp/nextcloud-web:latest #docker push dkregistry.xai-corp.net:5000/xaicorp/nextcloud-web:latest
docker push dkregistry.xai-corp.net:5000/sslproxy:2.1 docker push dkregistry.xai-corp.net:5000/sslproxy:2.1
docker push dkregistry.xai-corp.net:5000/letsencrypt:latest docker push dkregistry.xai-corp.net:5000/letsencrypt:latest
docker push dkregistry.xai-corp.net:5000/xaicorp/prometheus:latest docker push dkregistry.xai-corp.net:5000/xaicorp/prometheus:latest

View File

@@ -10,8 +10,10 @@ docker stack deploy --with-registry-auth --prune -c nextcloud/docker-compose-pro
docker stack deploy --with-registry-auth --prune -c ui/docker-compose.yml dkui docker stack deploy --with-registry-auth --prune -c ui/docker-compose.yml dkui
docker stack deploy --with-registry-auth --prune -c sslproxy/docker-compose-prod.yml sslproxy
#docker stack deploy --with-registry-auth --prune -c letsencrypt/docker-compose-update.yml letsencrypt #docker stack deploy --with-registry-auth --prune -c letsencrypt/docker-compose-update.yml letsencrypt
#docker stack deploy --with-registry-auth --prune -c prometheus/docker-compose-prod.yml metrics docker stack deploy --with-registry-auth --prune -c prometheus/docker-compose-prod.yml metrics
sleep 5
docker stack deploy --with-registry-auth --prune -c sslproxy/docker-compose-prod.yml sslproxy

View File

@@ -33,6 +33,7 @@ services:
LETSENCRYPT_DOMAIN10: www.xai-corp.net LETSENCRYPT_DOMAIN10: www.xai-corp.net
LETSENCRYPT_DOMAIN11: mail.xai-corp.net LETSENCRYPT_DOMAIN11: mail.xai-corp.net
LETSENCRYPT_DOMAIN12: abcapi.xai-corp.net LETSENCRYPT_DOMAIN12: abcapi.xai-corp.net
LETSENCRYPT_DOMAIN13: metrics.xai-corp.net
command: command:
- install - install
- --expand - --expand

View File

@@ -34,6 +34,7 @@ services:
LETSENCRYPT_DOMAIN10: www.xai-corp.net LETSENCRYPT_DOMAIN10: www.xai-corp.net
LETSENCRYPT_DOMAIN11: mail.xai-corp.net LETSENCRYPT_DOMAIN11: mail.xai-corp.net
LETSENCRYPT_DOMAIN12: abcapi.xai-corp.net LETSENCRYPT_DOMAIN12: abcapi.xai-corp.net
LETSENCRYPT_DOMAIN13: metrics.xai-corp.net
command: command:
- renewal - renewal
- --expand - --expand

View File

@@ -5,11 +5,24 @@
# docker-compose build && docker push dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest # docker-compose build && docker push dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest
# DOCKER_HOST=dkhost:2376 docker stack deploy --with-registry-auth -c docker-compose-prod.yml owncloud # DOCKER_HOST=dkhost:2376 docker stack deploy --with-registry-auth -c docker-compose-prod.yml owncloud
version: '2' version: '3'
services: services:
mono: xaicloud:
image: "dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest"
build: build:
context: . context: .
dockerfile: ./Dockerfile-mono dockerfile: Dockerfile
image: dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest ports:
- 8083:80
# - 9083:9000
volumes:
- ./data:/var/www/html
web:
image: "dkregistry.xai-corp.net:5000/xaicorp/nextcloud-web:latest"
build:
context: .
dockerfile: Dockerfile-web
ports:
- 8083:80

View File

@@ -0,0 +1,15 @@
---
# docker-compose file for nextcloud server
# docker login dkregistry.xai-corp.net:5000
# docker-compose build && docker push dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest
# DOCKER_HOST=dkhost:2376 docker stack deploy --with-registry-auth -c docker-compose-prod.yml owncloud
version: '2'
services:
mono:
build:
context: .
dockerfile: ./Dockerfile-mono
image: dkregistry.xai-corp.net:5000/xaicorp/nextcloud:latest

View File

@@ -9,6 +9,7 @@
version: '3.4' version: '3.4'
volumes: volumes:
prometheus-storage:
grafana-storage: grafana-storage:
services: services:
@@ -18,8 +19,8 @@ services:
ports: ports:
- 9090:9090 - 9090:9090
volumes: volumes:
- /opt/prometheus/data:/prometheus-data - prometheus-storage:/prometheus
#
# logging: # logging:
# driver: fluentd # driver: fluentd
# options: # options:

View File

@@ -26,7 +26,7 @@ scrape_configs:
static_configs: static_configs:
- targets: - targets:
- 'cubox-i.xai-corp.net:9189' - 'cubox-i.xai-corp.net:9189'
- 'home.xai-corp.net:9189' # - 'home.xai-corp.net:9189'
- job_name: fluentd - job_name: fluentd
metrics_path: /metrics metrics_path: /metrics

View File

@@ -0,0 +1,28 @@
proxy_cache_path /data/nginx/cache/metrics levels=1:2 keys_zone=metrics:10m max_size=10g
inactive=60m use_temp_path=off;
upstream metrics_upstream {
server tasks.metrics_graphana:3001;
server metrics.xai-corp.net:3001 backup;
server dkhost.xai-corp.net:3001 backup;
}
# xaibox.xai-corp.net
server {
listen 443 ssl;
server_name metrics.xai-corp.net;
ssl_certificate /etc/letsencrypt/live/xai-corp.net/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/xai-corp.net/privkey.pem;
client_max_body_size 200m;
#Strict-Transport-Security: max-age=15768000
add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;
location / {
proxy_set_header Connection $http_connection;
proxy_pass http://metrics_upstream;
}
}

View File

@@ -13,10 +13,12 @@ RUN apt-get update && apt-get install -y \
curl nano sed libwww-perl htop ca-certificates \ curl nano sed libwww-perl htop ca-certificates \
php7.0 php-cli php-fpm php-curl php-pear php-mcrypt php-zip php-mbstring php-xml \ php7.0 php-cli php-fpm php-curl php-pear php-mcrypt php-zip php-mbstring php-xml \
php-pgsql php-redis php-soap \ php-pgsql php-redis php-soap \
git \
\ \
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
&& php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
&& php composer-setup.php --install-dir=/usr/local/bin --filename=composer \ && php composer-setup.php --install-dir=/usr/local/bin --filename=composer \
&& composer global require franzl/studio && composer global require franzl/studio \
&& mkdir /.composer && chmod -R 777 /.composer
ENTRYPOINT /usr/local/bin/composer ENTRYPOINT /usr/local/bin/composer

View File

@@ -15,11 +15,13 @@ RUN apt-get update && apt-get install -y software-properties-common python-softw
curl nano sed libwww-perl htop ca-certificates \ curl nano sed libwww-perl htop ca-certificates \
php7.1 php-cli php-fpm php-curl php-pear php-mcrypt php-zip php-mbstring php-xml \ php7.1 php-cli php-fpm php-curl php-pear php-mcrypt php-zip php-mbstring php-xml \
php-pgsql php-redis php-soap \ php-pgsql php-redis php-soap \
git \
\ \
&& apt-cache pkgnames | grep php7.1 \ && apt-cache pkgnames | grep php7.1 \
&& rm /usr/bin/php && ln -s /usr/bin/php7.1 /usr/bin/php \ && rm /usr/bin/php && ln -s /usr/bin/php7.1 /usr/bin/php \
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
&& php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
&& php composer-setup.php --install-dir=/usr/local/bin --filename=composer && php composer-setup.php --install-dir=/usr/local/bin --filename=composer \
&& mkdir /.composer && chmod -R 777 /.composer
ENTRYPOINT ["/usr/local/bin/composer"] ENTRYPOINT ["/usr/local/bin/composer"]

View File

@@ -15,12 +15,13 @@ RUN apt-get update && apt-get install -y software-properties-common python-softw
curl nano sed libwww-perl htop ca-certificates \ curl nano sed libwww-perl htop ca-certificates \
php7.2 php-cli php-fpm php-curl php-pear php-mcrypt php-zip php-mbstring php-xml \ php7.2 php-cli php-fpm php-curl php-pear php-mcrypt php-zip php-mbstring php-xml \
php-pgsql php-redis php-soap\ php-pgsql php-redis php-soap\
git \
\ \
&& apt-cache pkgnames | grep php7.2 \ && apt-cache pkgnames | grep php7.2 \
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
&& php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
&& php composer-setup.php --install-dir=/usr/local/bin --filename=composer \ && php composer-setup.php --install-dir=/usr/local/bin --filename=composer \
&& composer global require franzl/studio && composer global require franzl/studio\
&& mkdir /.composer && chmod -R 777 /.composer
ENTRYPOINT ["/usr/local/bin/composer"] ENTRYPOINT ["/usr/local/bin/composer"]

View File

@@ -68,4 +68,6 @@ office IN CNAME dkhost
www IN CNAME dkhost www IN CNAME dkhost
mail IN CNAME dkhost mail IN CNAME dkhost
abcapi IN CNAME dkhost abcapi IN CNAME dkhost
prometheus IN CNAME dkhost
metrics IN CNAME dkhost
; xai-corp.net. IN CNAME dkhost ; xai-corp.net. IN CNAME dkhost