# HG changeset patch # User smith@nwoca.org # Date 1502830763 -3600 # Node ID daf91a3bbee56ebe7d293a72c9e8732ac1bce724 # Parent 06611703da299894880939955f0b6f8ba41a679f# Parent baf48e0925537693f9463de0eae4afcdfa7def85 flow: Merged 'v1.2.0' to ('production'). diff -r 06611703da29 -r daf91a3bbee5 .hgignore --- a/.hgignore Fri Jun 16 17:14:15 2017 +0100 +++ b/.hgignore Tue Aug 15 21:59:23 2017 +0100 @@ -1,5 +1,5 @@ syntax: regexp -^\.DS_Store +\.DS_Store .*~$ \.orig$ \.orig\..*$ diff -r 06611703da29 -r daf91a3bbee5 init.sh --- a/init.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/init.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,3 +1,12 @@ #!/bin/bash -alias utils='docker run -it -v ${PWD}:/tmp -v /ssdt:/ssdt --rm docker.ssdt.io/ssdt-utils' -alias send2ssdt='/ssdt/scripts/send.sh' \ No newline at end of file +getSsdtHomeDir() { + SOURCE="${BASH_SOURCE[0]}" + while [ -h "$SOURCE" ] ; do SOURCE="$(readlink "$SOURCE")"; done + echo $( cd $( dirname $SOURCE) && pwd ) +} + +export SSDT_HOME=$(getSsdtHomeDir) +export SSDT_SCRIPTS=${SSDT_HOME}/scripts +source "${SSDT_SCRIPTS}/.functions.sh" +alias utils='docker run -it -v ${PWD}:/tmp -v $SSDT_HOME:/ssdt --rm docker.ssdt.io/ssdt-utils' +alias send2ssdt='${SSDT_SCRIPTS}/send.sh' diff -r 06611703da29 -r daf91a3bbee5 java/Dockerfile --- a/java/Dockerfile Fri Jun 16 17:14:15 2017 +0100 +++ b/java/Dockerfile Tue Aug 15 21:59:23 2017 +0100 @@ -1,11 +1,15 @@ -FROM docker.ssdt.io/java:8-jre +FROM openjdk:8u121-jdk MAINTAINER Dave Smith -RUN echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections \ - && echo 'deb http://httpredir.debian.org/debian jessie contrib' > /etc/apt/sources.list.d/jessie-contrib.list \ - && apt-get update \ - && apt-get install -y ttf-mscorefonts-installer +RUN echo "deb http://httpredir.debian.org/debian jessie main contrib" > /etc/apt/sources.list \ + && echo "deb http://security.debian.org/ jessie/updates main contrib" >> /etc/apt/sources.list \ + && echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections \ + && apt-get update \ + && apt-get install -y ttf-mscorefonts-installer \ + && apt-get clean \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* ENV TZ=America/New_York diff -r 06611703da29 -r daf91a3bbee5 pilot/import-usas.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/import-usas.sh Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,22 @@ +#!/bin/bash + +source "$( dirname "${BASH_SOURCE[0]}")/../scripts/.functions.sh" + +docker-compose stop usasapp usasdb +resetDbVolume usasdb +docker-compose rm -vf usasapp usasdb + +export IMP_IRN=${IMP_IRN} +export IMP_URL=${IMP_URL-ftp://username:password@nwoca.org} +export IMP_PATH=${IMP_PATH} + +[ -f "docker-compose.override.yml" ] && export OVERRIDE=" -f docker-compose.override.yml" +# +docker-compose -f docker-compose.yml -f ${SSDT_HOME}/pilot/import-usas.yml $OVERRIDE rm -f usasimport +# start import and wait for completion +docker-compose -f docker-compose.yml -f ${SSDT_HOME}/pilot/import-usas.yml $OVERRIDE up usasimport | tee usasimport.log +# remove temporary container +docker-compose -f docker-compose.yml -f ${SSDT_HOME}/pilot/import-usas.yml $OVERRIDE rm -f usasimport +# start application +docker-compose up -d usasapp + diff -r 06611703da29 -r daf91a3bbee5 pilot/import-usas.yml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/import-usas.yml Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,12 @@ +version: "3.3" +services: + usasimport: + image: docker.ssdt.io/usas-import:${USAS_TAG:-pilot} + command: -i ${IMP_IRN- } -u ${IMP_URL- } -r ${IMP_PATH- } + depends_on: + - usasdb + environment: + - DB_HOST=usasdb + - DB_NAME=usasdb + - DB_USER=usas + - DB_PASS=${USAS_DB_PASSWORD:-usasdefault} \ No newline at end of file diff -r 06611703da29 -r daf91a3bbee5 pilot/import-usps.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/import-usps.sh Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,23 @@ +#!/bin/bash + +source "$( dirname "${BASH_SOURCE[0]}")/../scripts/.functions.sh" + +docker-compose stop uspsapp uspsdb +resetDbVolume uspsdb +docker-compose rm -vf uspsapp uspsdb + +export IMP_IRN=${IMP_IRN} +export IMP_URL=${IMP_URL-ftp://username:password@nwoca.org} +export IMP_PATH=${IMP_PATH} +export IMP_ANON=${IMP_ANON:--a false} +export IMP_EM=${IMP_EM-} + +[ -f "docker-compose.override.yml" ] && export OVERRIDE=" -f docker-compose.override.yml" + +docker-compose -f docker-compose.yml -f ${SSDT_HOME}/pilot/import-usps.yml $OVERRIDE rm -f uspsimport +# start import and wait for completion +docker-compose -f docker-compose.yml -f ${SSDT_HOME}/pilot/import-usps.yml $OVERRIDE up uspsimport | tee uspsimport.log +# remove temporary container +docker-compose -f docker-compose.yml -f ${SSDT_HOME}/pilot/import-usps.yml $OVERRIDE rm -f uspsimport +# start application +docker-compose up -d uspsapp diff -r 06611703da29 -r daf91a3bbee5 pilot/import-usps.yml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/import-usps.yml Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,13 @@ +version: "3.3" +services: + uspsimport: + image: docker.ssdt.io/usps-import:${USPS_TAG:-pilot} + command: -i ${IMP_IRN- } -u ${IMP_URL- } -r ${IMP_PATH- } ${IMP_ANON- } ${IMP_EM- } + depends_on: + - uspsdb + environment: + - DB_HOST=uspsdb + - DB_NAME=uspsdb + - DB_USER=usps + - DB_PASS=${USPS_DB_PASSWORD:-uspsdefault} + \ No newline at end of file diff -r 06611703da29 -r daf91a3bbee5 pilot/setup.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/setup.sh Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,126 @@ +#!/bin/bash +# Sets up a new district project based on SSDT default configuration in the current working directory. +# +# Usage: +# +# /data/preview/sampletown $ /ssdt/compose2/preview/setup.sh [usas,usps...] +# +# Will create a docker-compose.yml and .env file with default settings. +# +# +source "$(dirname "${BASH_SOURCE[0]}")/../scripts/.functions.sh" + +md5calc() { + md5sum ${1} ; +} + +md5verify() { + md5sum -c --status ${1} ; +} + +genDBHash() { + echo $(date +%s%N | sha256sum | base64 | head -c 32 ; echo) +} + +base=$(dirname "${BASH_SOURCE[0]}") +default_name=$(basename $PWD) + +args="$1$2" + +usas="" +usps="" + +if [ "$args" == "" ] || [ -z "${args##*usas*}" ] +then + usas=1 +fi + +if [ "$args" == "" ] || [ -z "${args##*usps*}" ] +then + usps=1 +fi + +echo "Preparing '$(basename $PWD)' with default USxS configuration" + +touch .env +source .env + +if [ "$COMPOSE_PROJECT_NAME" == "" ] +then + read -e -p "Enter project name: <${default_name}> " answer + project_name=${answer:-$default_name} + echo "COMPOSE_PROJECT_NAME=${project_name}" >> .env + echo "set project name in .env file" + source .env +fi + +if [ ! -e "docker-compose.yml" ] +then + create="OK" +elif [ -e ".docker-compose.md5" ]; then + md5verify ./.docker-compose.md5 && create="OK" +fi + +if [ "$create" == "OK" ] +then + echo "# **** DO NOT MODIFY THIS FILE. ****" > ./docker-compose.yml + echo "# Place customizations in docker-compose.override.yml and .env" >> ./docker-compose.yml + echo "version: \"3.3\"" >> ./docker-compose.yml + echo "services:" >> ./docker-compose.yml + + [ ! "$usas" == "" ] && cat $base/usas-services.yml >> ./docker-compose.yml + + [ ! "$usps" == "" ] && cat $base/usps-services.yml >> ./docker-compose.yml + + echo "volumes:" >> ./docker-compose.yml + + if [ ! "$usas" == "" ] + then + echo " usasdata:" >> ./docker-compose.yml + [ "$USAS_DB_PASSWORD" == "" ] && echo "USAS_DB_PASSWORD=$(genDBHash)" >> ./.env + fi + + if [ ! "$usps" == "" ] + then + echo " uspsdata:" >> ./docker-compose.yml + [ "$USPS_DB_PASSWORD" == "" ] && echo "USPS_DB_PASSWORD=$(genDBHash)" >> ./.env + fi + + echo "" >> ./docker-compose.yml + + md5calc ./docker-compose.yml > .docker-compose.md5 + + echo "created docker-compose.yml" + +else + echo " + + Error! docker-compose.yml file has been modified or checksum missing. Can not auto-apply update(s). + Move customizations to docker-compose.override.yml then delete the docker-compose.yml +" +fi + +if [ "$USAS_APPLICATIONID" == "" ] +then + read -e -p "Generate USAS and USPS integration config? " answer + case $answer in + y | Y | yes | YES ) answer="y";; + n | N | no | NO ) answer="n";; + *) answer="y" + esac + if [ "$answer" == "y" ] + then + usas_id=${COMPOSE_PROJECT_NAME}-usas + usas_key=$(openssl rand -hex 32) + usps_id=${COMPOSE_PROJECT_NAME}-usps + usps_key=$(openssl rand -hex 32) + echo "USAS_APPLICATIONID=${usas_id}" >> .env + echo "USAS_APIKEY=$usas_key" >> .env + echo "USPS_APPLICATIONID=${usps_id}" >> .env + echo "USPS_APIKEY=$usps_key" >> .env + echo "Created integration API keys. Enable integration modules after applications start" + fi +fi + +echo "Review or create a docker-compose.override.yml for custom settings." + diff -r 06611703da29 -r daf91a3bbee5 pilot/training.yml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/training.yml Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,41 @@ +usasdb: + restart: unless-stopped + image: docker.ssdt.io/trainingdb-usas + environment: + - DB_NAME=usasdb + - DB_USER=usas + - DB_PASS=usasdefault +usasapp: + restart: unless-stopped + image: docker.ssdt.io/usas-app:${USAS_TAG:-pilot} + volumes: + - ${PWD}/config:/config + environment: + - DB_HOST=usas-database + - DB_NAME=usasdb + - DB_USER=usas + - DB_PASS=usasdefault + - JAVA_OPTS=-Xmx640m + links: + - usasdb:usas-database +uspsdb: + restart: unless-stopped + image: docker.ssdt.io/trainingdb-usps + environment: + - DB_NAME=uspsdb + - DB_USER=usps + - DB_PASS=uspsdefault +uspsapp: + restart: unless-stopped + image: docker.ssdt.io/usps-app:${USPS_TAG:-pilot} + volumes: + - ${PWD}/config:/config + environment: + - DB_HOST=usps-database + - DB_NAME=uspsdb + - DB_USER=usps + - DB_PASS=uspsdefault + - JAVA_OPTS=-Xmx640m + links: + - uspsdb:usps-database + diff -r 06611703da29 -r daf91a3bbee5 pilot/usas-services.yml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/usas-services.yml Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,31 @@ + usasdb: + restart: unless-stopped + image: docker.ssdt.io/ssdt-postgres:5 + volumes: + - usasdata:/var/lib/postgresql/data + networks: + - default + environment: + - DB_NAME=usasdb + - DB_USER=usas + - DB_PASS=${USAS_DB_PASSWORD:-usasdefault} + usasapp: + restart: unless-stopped + image: docker.ssdt.io/usas-app:${USAS_TAG:-pilot} + depends_on: + - usasdb + networks: + - default + environment: + - DB_HOST=usasdb + - DB_NAME=usasdb + - DB_USER=usas + - DB_PASS=${USAS_DB_PASSWORD:-usasdefault} + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_CLIENTHOST=uspsapp + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_CLIENTDNSLOOKUP=true + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_SERVERHOST=0.0.0.0 + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_SERVERHOSTDNSLOOKUP=false + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_APPLICATIONID=${USAS_APPLICATIONID:- } + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_APIKEY=${USAS_APIKEY:- } + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_REMOTEAPPLICATIONID=${USPS_APPLICATIONID:- } + - USAS_MODULE_USPSINTEGRATION_CONFIGURATION_USPSCONFIGURATION_REMOTEAPIKEY=${USPS_APIKEY:- } diff -r 06611703da29 -r daf91a3bbee5 pilot/usps-services.yml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/usps-services.yml Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,31 @@ + uspsdb: + restart: unless-stopped + image: docker.ssdt.io/ssdt-postgres:5 + volumes: + - uspsdata:/var/lib/postgresql/data + networks: + - default + environment: + - DB_NAME=uspsdb + - DB_USER=usps + - DB_PASS=${USPS_DB_PASSWORD:-uspsdefault} + uspsapp: + restart: unless-stopped + image: docker.ssdt.io/usps-app:${USPS_TAG:-pilot} + depends_on: + - uspsdb + networks: + - default + environment: + - DB_HOST=uspsdb + - DB_NAME=uspsdb + - DB_USER=usps + - DB_PASS=${USPS_DB_PASSWORD:-uspsdefault} + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_CLIENTHOST=usasapp + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_CLIENTDNSLOOKUP=true + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_SERVERHOST=0.0.0.0 + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_SERVERHOSTDNSLOOKUP=false + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_APPLICATIONID=${USPS_APPLICATIONID:- } + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_APIKEY=${USPS_APIKEY:- } + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_REMOTEAPPLICATIONID=${USAS_APPLICATIONID:- } + - USPS_MODULE_USASINTEGRATION_CONFIGURATION_USASCONFIGURATION_REMOTEAPIKEY=${USAS_APIKEY:- } diff -r 06611703da29 -r daf91a3bbee5 postgres/Dockerfile --- a/postgres/Dockerfile Fri Jun 16 17:14:15 2017 +0100 +++ b/postgres/Dockerfile Tue Aug 15 21:59:23 2017 +0100 @@ -1,7 +1,7 @@ # # Docker file to create postgres image for ssdt applications -FROM postgres:9.4.5 +FROM postgres:9.6.3 MAINTAINER Dave Smith smith@nwoca.org @@ -21,3 +21,14 @@ RUN echo $TZ > /etc/timezone \ && dpkg-reconfigure --frontend noninteractive tzdata + +COPY ssdt-entrypoint.sh /usr/local/bin/ + +RUN chmod 755 /usr/local/bin/ssdt-entrypoint.sh + +LABEL "io.ssdt.type"="db" + +ENTRYPOINT ["ssdt-entrypoint.sh"] + +CMD ["postgres"] + \ No newline at end of file diff -r 06611703da29 -r daf91a3bbee5 postgres/ssdt-entrypoint.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/postgres/ssdt-entrypoint.sh Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,6 @@ +#!/bin/bash +if [ ! "$POSTGRES_PASSWORD" ]; then + export POSTGRES_PASSWORD=$(date +%s | sha256sum | base64 | head -c 32 ; echo) +fi + +docker-entrypoint.sh "$@" \ No newline at end of file diff -r 06611703da29 -r daf91a3bbee5 scripts/.functions.sh --- a/scripts/.functions.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/.functions.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,4 +1,17 @@ #!/bin/bash +getScriptDir() { + SOURCE="${BASH_SOURCE[0]}" + while [ -h "$SOURCE" ] ; do SOURCE="$(readlink "$SOURCE")"; done + echo $( cd $( dirname $SOURCE) && pwd ) +} + +if [ "$SSDT_HOME" == "" ] +then + export SSDT_SCRIPTS=$(getScriptDir) + export SSDT_HOME=$(dirname $SSDT_SCRIPTS) +fi + +export SSDT_DOCKER_VERSION=$(docker version --format '{{.Server.Version}}') # deletes psql data from specified service resetDbVolume() { @@ -26,4 +39,10 @@ container=$(composeGetContainer $service) echo "$2" | docker exec -i $container sh -c "gosu postgres psql \$DB_NAME" -} \ No newline at end of file +} + +composeGetProject() { + service=${1?"Must supply service from current project"} + container=$(composeGetContainer $service) + echo $(docker inspect -f '{{index .Config.Labels "com.docker.compose.project" }}' $container) +} diff -r 06611703da29 -r daf91a3bbee5 scripts/backup-container.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/backup-container.sh Tue Aug 15 21:59:23 2017 +0100 @@ -0,0 +1,38 @@ +#!/bin/bash +# Executes a database backup for the specifed database container. +# The current directory is expected to contaion a project configured +# as with SSDT conventions for an application database. +# +# When successful, the output file will be in ./backup with the +# container name and timestamp in the file. The format of the output +# is a compressed pg_dump (sql) format. +# +container=${1?Must provide container name to backup} + +source "${SSDT_SCRIPTS:-$(dirname "${BASH_SOURCE[0]}")}/.functions.sh" + +set -o pipefail +mkdir -p ./backup +backupFile=./backup/${container}.$(date +%Y-%m-%d-%H-%M-%S).backup + +project=$(composeGetProject $container) + +if [ "$project" == "" ]; then + echo "no project available" + exit 1 +fi + +echo "starting backup of $container for $project" +docker-compose exec $container sh -c "gosu postgres pg_dump -Cc --if-exists --dbname=$container ; (exit $?) " > ${backupFile} + +if [[ $( grep --count "CREATE TABLE" ${backupFile} ) -lt 200 || $( grep --count "PostgreSQL database dump complete" ${backupFile} ) -eq 0 ]]; then + echo "ERROR: backup verification FAILED" + echo "ERROR: $(tail ${backupFile})" + exit 1 +fi + +gzip ${backupFile} + + +echo "completed backup of $container for $project to ${backupFile}" + diff -r 06611703da29 -r daf91a3bbee5 scripts/backup-usas.sh --- a/scripts/backup-usas.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/backup-usas.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,6 +1,5 @@ #!/bin/bash - docker-compose run --rm usasdb sh -c \ - "pg_dump -Cc --if-exists --host=usasdb \ - --dbname=\$USASDB_ENV_DB_NAME \ - --username=\$USASDB_ENV_DB_USER | gzip \ - > /backup/\$USASDB_ENV_DB_NAME.$(date +%Y-%m-%d-%H-%M-%S).backup.gz" +source "${SSDT_SCRIPTS:-$(dirname "${BASH_SOURCE[0]}")}/.functions.sh" + +${SSDT_SCRIPTS}/backup-container.sh usasdb + diff -r 06611703da29 -r daf91a3bbee5 scripts/backup-usps.sh --- a/scripts/backup-usps.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/backup-usps.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,6 +1,6 @@ #!/bin/bash - docker-compose run --rm uspsdb sh -c \ - "pg_dump -Cc --if-exists --host=uspsdb \ - --dbname=\$USPSDB_ENV_DB_NAME \ - --username=\$USPSDB_ENV_DB_USER | gzip \ - > /backup/\$USPSDB_ENV_DB_NAME.$(date +%Y-%m-%d-%H-%M-%S).backup.gz" + +source "${SSDT_SCRIPTS:-$(dirname "${BASH_SOURCE[0]}")}/.functions.sh" + +${SSDT_SCRIPTS}/backup-container.sh uspsdb + diff -r 06611703da29 -r daf91a3bbee5 scripts/capture.sh --- a/scripts/capture.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/capture.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,3 +1,4 @@ #!/bin/bash -# writes tail of current logs to standard out from running containers in compose project. -docker-compose ps -q | xargs -I ID docker inspect --format='{{.LogPath}}' ID | xargs tail -n${1-8000} +# current logs to standard out from container (all containers by default) in current project +docker-compose logs --no-color $1 + diff -r 06611703da29 -r daf91a3bbee5 scripts/console.sh --- a/scripts/console.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/console.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,11 +1,23 @@ #!/bin/bash +# connects to the telnet console of the application for the specified service of the current project +# For docker 1.12 and compose 1.9 (and higher) assume project is assigned to a network +# named "${project}_default" per SSDT templates. -# connects to the telnet console of the application for the specified service of the current project source "$( dirname "${BASH_SOURCE[0]}")/.functions.sh" container=$(composeGetContainer ${1?"Must specify the app service of the console to connect to"} ) ip=$(docker inspect -f '{{.NetworkSettings.IPAddress}}' $container) -docker run -it -v ${PWD}:/tmp -v /ssdt:/ssdt --rm docker.ssdt.io/ssdt-utils telnet $ip 2000 | tee console.log +if [ "$ip" == "" ] +then + ip=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $container) + project=$(composeGetProject ${1} ) +fi +if [ "$project" == "" ] +then + docker run -it -v ${PWD}:/tmp -v ${SSDT_HOME}:/ssdt --rm docker.ssdt.io/ssdt-utils telnet $ip 2000 | tee console.log +else + docker run -it --network ${project}_default --rm docker.ssdt.io/ssdt-utils telnet $ip 2000 | tee console.log +fi diff -r 06611703da29 -r daf91a3bbee5 scripts/info.sh --- a/scripts/info.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/info.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,13 +1,13 @@ #!/bin/bash + source "$( dirname "${BASH_SOURCE[0]}")/.functions.sh" echo $BASH_VERSION docker version docker-compose version echo "------- Docker info-------------" docker info echo "------- Images -----------------" -/ssdt/scripts/d-images.sh + $SSDT_HOME/scripts/d-images.sh echo "------- Containers------" -/ssdt/scripts/d-ps.sh + $SSDT_HOME/scripts/d-ps.sh echo "------- OS Processes------------" top -b -n 1 - diff -r 06611703da29 -r daf91a3bbee5 scripts/send.sh --- a/scripts/send.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/send.sh Tue Aug 15 21:59:23 2017 +0100 @@ -1,4 +1,12 @@ #!/bin/bash +# +# Securely sends a file or standard input to a SSDT web server. +# e.g: +# capture.sh | send.sh - # sends log files to ssdt server for the current project +# send.sh docker-compose.yml # sends the compose file +# +source "$( dirname "${BASH_SOURCE[0]}")/.functions.sh" + file=${1?"Usage: $0 filename [name]\n specify the filename relative to the current directory or - for stdin.\noptionally specify a short name (default to base directory)"} if [ "$file" != "-" ] then @@ -6,5 +14,6 @@ fi name=${2:-$(basename $PWD)} source=$(hostname) -docker run -i -v /ssdt:/ssdt -v ${PWD}:/tmp --rm docker.ssdt.io/ssdt-utils \ + +docker run -i -v $SSDT_HOME:/ssdt -v ${PWD}:/tmp --rm docker.ssdt.io/ssdt-utils \ curl -F source=$source -F name=$name -F file=@$file https://upload.ssdt.io/upload \ No newline at end of file diff -r 06611703da29 -r daf91a3bbee5 scripts/updates-pull.sh --- a/scripts/updates-pull.sh Fri Jun 16 17:14:15 2017 +0100 +++ b/scripts/updates-pull.sh Tue Aug 15 21:59:23 2017 +0100 @@ -18,7 +18,7 @@ do repo=${line[0]} tag=${line[1]} - if [[ $repo == docker.ssdt.io* ]] + if [[ $repo == docker.ssdt.io* && $tag != *none* ]] then echo "docker pull ${repo}:${tag}" docker pull ${repo}:${tag} diff -r 06611703da29 -r daf91a3bbee5 tomcat/Dockerfile --- a/tomcat/Dockerfile Fri Jun 16 17:14:15 2017 +0100 +++ b/tomcat/Dockerfile Tue Aug 15 21:59:23 2017 +0100 @@ -1,11 +1,21 @@ -FROM tomcat:8.5.5-jre8 +FROM tomcat:8.5.14-jre8 MAINTAINER Dave Smith -RUN echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections \ - && echo 'deb http://httpredir.debian.org/debian jessie contrib' > /etc/apt/sources.list.d/jessie-contrib.list \ - && apt-get update \ - && apt-get install -y ttf-mscorefonts-installer +RUN echo "deb http://httpredir.debian.org/debian jessie main contrib" > /etc/apt/sources.list \ + && echo "deb http://security.debian.org/ jessie/updates main contrib" >> /etc/apt/sources.list \ + && echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections \ + && apt-get update \ + && apt-get install -y ttf-mscorefonts-installer \ + && apt-get clean \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* + +RUN apt-get update \ + && apt-get install -y postgresql-client \ + && apt-get clean \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* WORKDIR /usr/local/tomcat @@ -16,7 +26,3 @@ && chmod +x bin/setenv.sh ENV TZ=America/New_York - -ENV LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/usr/lib/x86_64-linux-gnu/ - -RUN apt-get install -y libtcnative-1 diff -r 06611703da29 -r daf91a3bbee5 tomcat/tomcat-users.xml --- a/tomcat/tomcat-users.xml Fri Jun 16 17:14:15 2017 +0100 +++ b/tomcat/tomcat-users.xml Tue Aug 15 21:59:23 2017 +0100 @@ -5,5 +5,7 @@ version="1.0"> + + \ No newline at end of file