From 3fd53ed86f8d4a199426bdd01d62d83ede64448f Mon Sep 17 00:00:00 2001 From: Francisco Sandoval Date: Tue, 5 Dec 2023 11:08:11 -0300 Subject: [PATCH] se realiza limpieza a carpetas --- docker/docker-compose.yml | 70 ---------- docker/postgres-geometry/Dockerfile | 129 ------------------ docker/postgres-geometry/initdb-postgis.sh | 22 --- docker/postgres-geometry/update-postgis.sh | 28 ---- .../database}/01_create_tables.sql | 0 readme.md | 71 ++++++++++ 6 files changed, 71 insertions(+), 249 deletions(-) delete mode 100644 docker/docker-compose.yml delete mode 100644 docker/postgres-geometry/Dockerfile delete mode 100644 docker/postgres-geometry/initdb-postgis.sh delete mode 100644 docker/postgres-geometry/update-postgis.sh rename {docker => docs/database}/01_create_tables.sql (100%) diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml deleted file mode 100644 index 79d5c4b..0000000 --- a/docker/docker-compose.yml +++ /dev/null @@ -1,70 +0,0 @@ -version: "3" -name: transporte - -services: - - app: - image: python:3.11-alpine - depends_on: - - db - environment: - - PORT=4000 - - DBHOST=db - - DBPORT=5432 - - DBNAME=database - - DBSCHEMA=desarrollo1 - - DBUSER=postgres - - DBPASS=password - - SECRET_JWT="kf6Jc!f30Z!1k1N0#!%#" - ports: - - 4000:4000 - volumes: - - ../:/app - - venv:/root/venv - working_dir: /app - command: sh -c " - [ -d /root/venv/bin ] || ( \ - python -m venv /root/venv/ \ - && . /root/venv/bin/activate \ - && pip install -r requirements.txt \ - ) ; - - . /root/venv/bin/activate ; - - cd /app ; - [ -d project ] || django-admin startproject project ; - [ -f .env ] || ( [ -f .env.develop ] && cp .env.develop .env ) ; - chmod -R o+w project/ ; - python project/manage.py runserver 0.0.0.0:$$PORT - " - - # REF: https://github.com/postgis/docker-postgis/tree/master/14-3.3 - db: - image: postgres:14-alpine-geometry - build: - context: ./postgres-geometry - dockerfile: Dockerfile - volumes: - - db:/var/lib/postgresql/data - - ./backups:/docker-entrypoint-initdb.d - #- ./01_create_tables.sql:/docker-entrypoint-initdb.d/01_create_tables.sql - ports: - - 5436:5432 - environment: - POSTGRES_PASSWORD: password - POSTGRES_DB: database - PGDATA: /var/lib/postgresql/data/pgdata - - adminer: - image: adminer - ports: - - 8080:8080 - environment: - ADMINER_DEFAULT_SERVER: db - ADMINER_DEFAULT_USER: postgres - ADMINER_DEFAULT_PASSWORD: password - ADMINER_DESIGN: lucas-sandery - -volumes: - db: - venv: diff --git a/docker/postgres-geometry/Dockerfile b/docker/postgres-geometry/Dockerfile deleted file mode 100644 index 0839550..0000000 --- a/docker/postgres-geometry/Dockerfile +++ /dev/null @@ -1,129 +0,0 @@ -FROM postgres:14-alpine3.15 - -LABEL maintainer="PostGIS Project - https://postgis.net" - -ENV POSTGIS_VERSION 3.2.1 -ENV POSTGIS_SHA256 1e9cc4c4f390e4c3be4f5c125a72f39dfa847412332952429952cbd731ac9ba3 - -RUN set -eux \ - \ - && if [ $(printf %.1s "$POSTGIS_VERSION") == 3 ]; then \ - set -eux ; \ - # - # using only v3.15 - # - #GEOS: https://pkgs.alpinelinux.org/packages?name=geos&branch=v3.15 \ - export GEOS_ALPINE_VER=3.10 ; \ - #GDAL: https://pkgs.alpinelinux.org/packages?name=gdal&branch=v3.15 \ - export GDAL_ALPINE_VER=3.4 ; \ - #PROJ: https://pkgs.alpinelinux.org/packages?name=proj&branch=v3.15 \ - export PROJ_ALPINE_VER=8.2 ; \ - # - elif [ $(printf %.1s "$POSTGIS_VERSION") == 2 ]; then \ - set -eux ; \ - # - # using older branches v3.13; v3.14 for GEOS,GDAL,PROJ - # - #GEOS: https://pkgs.alpinelinux.org/packages?name=geos&branch=v3.13 \ - export GEOS_ALPINE_VER=3.8 ; \ - #GDAL: https://pkgs.alpinelinux.org/packages?name=gdal&branch=v3.14 \ - export GDAL_ALPINE_VER=3.2 ; \ - #PROJ: https://pkgs.alpinelinux.org/packages?name=proj&branch=v3.14 \ - export PROJ_ALPINE_VER=7.2 ; \ - # - \ - echo 'https://dl-cdn.alpinelinux.org/alpine/v3.14/main' >> /etc/apk/repositories ; \ - echo 'https://dl-cdn.alpinelinux.org/alpine/v3.14/community' >> /etc/apk/repositories ; \ - echo 'https://dl-cdn.alpinelinux.org/alpine/v3.13/main' >> /etc/apk/repositories ; \ - echo 'https://dl-cdn.alpinelinux.org/alpine/v3.13/community' >> /etc/apk/repositories ; \ - \ - else \ - set -eux ; \ - echo ".... unknown \$POSTGIS_VERSION ...." ; \ - exit 1 ; \ - fi \ - \ - && apk add --no-cache --virtual .fetch-deps \ - ca-certificates \ - openssl \ - tar \ - \ - && wget -O postgis.tar.gz "https://github.com/postgis/postgis/archive/${POSTGIS_VERSION}.tar.gz" \ - && echo "${POSTGIS_SHA256} *postgis.tar.gz" | sha256sum -c - \ - && mkdir -p /usr/src/postgis \ - && tar \ - --extract \ - --file postgis.tar.gz \ - --directory /usr/src/postgis \ - --strip-components 1 \ - && rm postgis.tar.gz \ - \ - && apk add --no-cache --virtual .build-deps \ - \ - gdal-dev~=${GDAL_ALPINE_VER} \ - geos-dev~=${GEOS_ALPINE_VER} \ - proj-dev~=${PROJ_ALPINE_VER} \ - \ - autoconf \ - automake \ - clang-dev \ - file \ - g++ \ - gcc \ - gettext-dev \ - json-c-dev \ - libtool \ - libxml2-dev \ - llvm-dev \ - make \ - pcre-dev \ - perl \ - protobuf-c-dev \ - \ -# build PostGIS - \ - && cd /usr/src/postgis \ - && gettextize \ - && ./autogen.sh \ - && ./configure \ - --with-pcredir="$(pcre-config --prefix)" \ - && make -j$(nproc) \ - && make install \ - \ -# regress check - && mkdir /tempdb \ - && chown -R postgres:postgres /tempdb \ - && su postgres -c 'pg_ctl -D /tempdb init' \ - && su postgres -c 'pg_ctl -D /tempdb start' \ - && cd regress \ - && make -j$(nproc) check RUNTESTFLAGS=--extension PGUSER=postgres \ - #&& make -j$(nproc) check RUNTESTFLAGS=--dumprestore PGUSER=postgres \ - #&& make garden PGUSER=postgres \ - \ - && su postgres -c 'psql -c "CREATE EXTENSION IF NOT EXISTS postgis;"' \ - && su postgres -c 'psql -t -c "SELECT version();"' >> /_pgis_full_version.txt \ - && su postgres -c 'psql -t -c "SELECT PostGIS_Full_Version();"' >> /_pgis_full_version.txt \ - \ - && su postgres -c 'pg_ctl -D /tempdb --mode=immediate stop' \ - && rm -rf /tempdb \ - && rm -rf /tmp/pgis_reg \ -# add .postgis-rundeps - && apk add --no-cache --virtual .postgis-rundeps \ - \ - gdal~=${GDAL_ALPINE_VER} \ - geos~=${GEOS_ALPINE_VER} \ - proj~=${PROJ_ALPINE_VER} \ - \ - json-c \ - libstdc++ \ - pcre \ - protobuf-c \ -# clean - && cd / \ - && rm -rf /usr/src/postgis \ - && apk del .fetch-deps .build-deps \ -# print PostGIS_Full_Version() for the log. ( experimental & internal ) - && cat /_pgis_full_version.txt - -COPY ./initdb-postgis.sh /docker-entrypoint-initdb.d/10_postgis.sh -COPY ./update-postgis.sh /usr/local/bin diff --git a/docker/postgres-geometry/initdb-postgis.sh b/docker/postgres-geometry/initdb-postgis.sh deleted file mode 100644 index cdde274..0000000 --- a/docker/postgres-geometry/initdb-postgis.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -set -e - -# Perform all actions as $POSTGRES_USER -export PGUSER="$POSTGRES_USER" - -# Create the 'template_postgis' template db -"${psql[@]}" <<- 'EOSQL' -CREATE DATABASE template_postgis IS_TEMPLATE true; -EOSQL - -# Load PostGIS into both template_database and $POSTGRES_DB -for DB in template_postgis "$POSTGRES_DB"; do - echo "Loading PostGIS extensions into $DB" - "${psql[@]}" --dbname="$DB" <<-'EOSQL' - CREATE EXTENSION IF NOT EXISTS postgis; - CREATE EXTENSION IF NOT EXISTS postgis_topology; - CREATE EXTENSION IF NOT EXISTS fuzzystrmatch; - CREATE EXTENSION IF NOT EXISTS postgis_tiger_geocoder; -EOSQL -done diff --git a/docker/postgres-geometry/update-postgis.sh b/docker/postgres-geometry/update-postgis.sh deleted file mode 100644 index f98abd2..0000000 --- a/docker/postgres-geometry/update-postgis.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -set -e - -# Perform all actions as $POSTGRES_USER -export PGUSER="$POSTGRES_USER" - -POSTGIS_VERSION="${POSTGIS_VERSION%%+*}" - -# Load PostGIS into both template_database and $POSTGRES_DB -for DB in template_postgis "$POSTGRES_DB" "${@}"; do - echo "Updating PostGIS extensions '$DB' to $POSTGIS_VERSION" - psql --dbname="$DB" -c " - -- Upgrade PostGIS (includes raster) - CREATE EXTENSION IF NOT EXISTS postgis VERSION '$POSTGIS_VERSION'; - ALTER EXTENSION postgis UPDATE TO '$POSTGIS_VERSION'; - - -- Upgrade Topology - CREATE EXTENSION IF NOT EXISTS postgis_topology VERSION '$POSTGIS_VERSION'; - ALTER EXTENSION postgis_topology UPDATE TO '$POSTGIS_VERSION'; - - -- Install Tiger dependencies in case not already installed - CREATE EXTENSION IF NOT EXISTS fuzzystrmatch; - -- Upgrade US Tiger Geocoder - CREATE EXTENSION IF NOT EXISTS postgis_tiger_geocoder VERSION '$POSTGIS_VERSION'; - ALTER EXTENSION postgis_tiger_geocoder UPDATE TO '$POSTGIS_VERSION'; - " -done diff --git a/docker/01_create_tables.sql b/docs/database/01_create_tables.sql similarity index 100% rename from docker/01_create_tables.sql rename to docs/database/01_create_tables.sql diff --git a/readme.md b/readme.md index 0b0b179..4ce97f3 100644 --- a/readme.md +++ b/readme.md @@ -57,3 +57,74 @@ python /app/project/manage.py runserver 0.0.0.0:8000 python manage.py inspectdb > api/models.py ~~~ + +# file: docker-compose.yml + +~~~yml +version: '3' +name: transporte + +services: + + frontend: + image: node:18-alpine + volumes: + - ./frontend:/app + environment: + - VITE_PORT=3000 + - VITE_BACKEND=/api + working_dir: /app + command: sh -c " + [ ! -d node_modules ] && npm install ; + chmod -R o+w . ; + npm run dev + " + + backend: + image: python:3.11-alpine + environment: + - PORT=4000 + - DBHOST=db + - DBPORT=5432 + - DBNAME=database + - DBSCHEMA=desarrollo1 + - DBUSER=postgres + - DBPASS=password + - SECRET_JWT="kf6Jc!f30Z!1k1N0#!%#" + volumes: + - ./backend:/app + - venv:/root/venv + working_dir: /app + command: sh -c " + [ -d /root/venv/bin ] || ( \ + python -m venv /root/venv/ \ + && . /root/venv/bin/activate \ + && pip install -r requirements.txt \ + ) ; + + . /root/venv/bin/activate ; + + cd /app ; + [ -d project ] || django-admin startproject project ; + [ -f .env ] || ( [ -f .env.develop ] && cp .env.develop .env ) ; + chmod -R o+w project/ ; + python project/manage.py runserver 0.0.0.0:$$PORT + " + + db: + image: postgis/postgis:14-3.4-alpine + volumes: + - db:/var/lib/postgresql/data + - ./20231112_database.sql.gz:/backups/01_dump.sql.gz + # - ./backend/docs/database/01_create_tables.sql:/docker-entrypoint-initdb.d/01_create_tables.sql + ports: + - 5436:5432 + environment: + POSTGRES_PASSWORD: password + POSTGRES_DB: database + PGDATA: /var/lib/postgresql/data/pgdata + +volumes: + db: + venv: +~~~ \ No newline at end of file