se realiza limpieza a carpetas
parent
0a9b81b8b5
commit
3fd53ed86f
|
@ -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:
|
|
|
@ -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
|
|
|
@ -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
|
|
|
@ -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
|
|
71
readme.md
71
readme.md
|
@ -57,3 +57,74 @@ python /app/project/manage.py runserver 0.0.0.0:8000
|
||||||
python manage.py inspectdb > api/models.py
|
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:
|
||||||
|
~~~
|
Loading…
Reference in New Issue