docker mtf
This commit is contained in:
parent
404117d170
commit
921825b303
9 changed files with 11061 additions and 0 deletions
6
local_run/.env
Normal file
6
local_run/.env
Normal file
|
@ -0,0 +1,6 @@
|
|||
C3NAV_TAG=latest
|
||||
C3NAV_DOMAIN=c3nav.docker.localhost
|
||||
# to change the default database name
|
||||
#C3NAV_DATABASE_NAME=c3nav-37c3
|
||||
# if you want to change the default path to the data dir, which by default is a folder called data in this directory
|
||||
C3NAV_DOCKER_DATA_DIR=./data
|
109
local_run/compose.yml
Normal file
109
local_run/compose.yml
Normal file
|
@ -0,0 +1,109 @@
|
|||
# SPDX-FileCopyrightText: 2024 NOI Techpark
|
||||
# SPDX-FileCopyrightText: 2024 https://github.com/c3nav/c3nav
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
# Initially Copied from https://github.com/c3nav/c3nav/blob/034f8fe4633be3a982e94fd9e2f1fbc6d3dfafe1/deployment/docker/compose.yaml
|
||||
|
||||
x-restart-policy: &restart-policy
|
||||
restart: unless-stopped
|
||||
x-depends_on-default: &depends_on
|
||||
condition: service_started
|
||||
x-depends_on-healthy: &depends_on-healthy
|
||||
condition: service_healthy
|
||||
x-healthcheck_defaults: &healthcheck_defaults
|
||||
interval: 10s
|
||||
timeout: 2s
|
||||
retries: 5
|
||||
start_period: 5s
|
||||
x-c3nav-defaults: &c3nav-defaults
|
||||
build:
|
||||
context: ..
|
||||
dockerfile: docker/Dockerfile
|
||||
args:
|
||||
- COMMIT=${COMMIT}
|
||||
depends_on:
|
||||
redis:
|
||||
<<: *depends_on-healthy
|
||||
postgres:
|
||||
<<: *depends_on-healthy
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ${C3NAV_DOCKER_DATA_DIR:-./data}
|
||||
target: /data
|
||||
bind:
|
||||
create_host_path: true
|
||||
x-c3nav-environment: &c3nav-environment
|
||||
C3NAV_DEBUG: false
|
||||
C3NAV_LOGLEVEL: info
|
||||
C3NAV_CONFIG: /data/c3nav.cfg
|
||||
C3NAV_DATA_DIR: /data
|
||||
C3NAV_DJANGO_ALLOWED_HOSTS: localhost,127.0.0.1,c3nav-core,c3nav-tiles,${C3NAV_DJANGO_ALLOWED_HOSTS:-""},${C3NAV_DOMAIN}
|
||||
C3NAV_DJANGO_REVERSE_PROXY: "true"
|
||||
UWSGI_WORKERS: ${C3NAV_CORE_WORKERS:-2}
|
||||
C3NAV_DATABASE_BACKEND: postgresql
|
||||
C3NAV_DATABASE_NAME: ${C3NAV_DATABASE_NAME:-c3nav}
|
||||
C3NAV_DATABASE_USER: ${C3NAV_DATABASE_USER:-postgres}
|
||||
C3NAV_DATABASE_HOST: postgres
|
||||
C3NAV_REDIS: "redis://redis:6379/0"
|
||||
C3NAV_CELERY_BROKER: "redis://redis:6379/1"
|
||||
C3NAV_CELERY_BACKEND: "redis://redis:6379/2"
|
||||
|
||||
|
||||
services:
|
||||
c3nav-core:
|
||||
<<: [*restart-policy, *c3nav-defaults]
|
||||
command: webstatic
|
||||
environment:
|
||||
<<: *c3nav-environment
|
||||
C3NAV_AUTOMIGRATE: yes
|
||||
healthcheck:
|
||||
<<: *healthcheck_defaults
|
||||
test: curl -f http://localhost:8000/
|
||||
ports:
|
||||
- "${SERVER_PORT:-8000}:8000"
|
||||
|
||||
c3nav-workers:
|
||||
<<: [*restart-policy, *c3nav-defaults]
|
||||
command: worker
|
||||
environment:
|
||||
<<: *c3nav-environment
|
||||
C3NAV_AUTOMIGRATE: no
|
||||
healthcheck:
|
||||
interval: 30s
|
||||
timeout: 15s
|
||||
retries: 2
|
||||
start_period: 5s
|
||||
test: entrypoint worker_healthcheck
|
||||
|
||||
postgres:
|
||||
<<: *restart-policy
|
||||
image: postgres:16
|
||||
healthcheck:
|
||||
<<: *healthcheck_defaults
|
||||
test: pg_isready -U postgres
|
||||
environment:
|
||||
POSTGRES_DB: ${C3NAV_DATABASE_NAME:-c3nav}
|
||||
POSTGRES_HOST_AUTH_METHOD: "trust"
|
||||
volumes:
|
||||
- "c3nav-postgres:/var/lib/postgresql/data"
|
||||
|
||||
redis:
|
||||
<<: *restart-policy
|
||||
image: redis:7.2
|
||||
command: redis-server --save 60 1 --loglevel warning
|
||||
healthcheck:
|
||||
<<: *healthcheck_defaults
|
||||
test: redis-cli ping
|
||||
volumes:
|
||||
- "c3nav-redis:/data"
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 10032
|
||||
hard: 10032
|
||||
|
||||
volumes:
|
||||
c3nav-postgres:
|
||||
external: true
|
||||
c3nav-redis:
|
||||
external: true
|
6
local_run/data-copy/logo/sfscon.svg
Normal file
6
local_run/data-copy/logo/sfscon.svg
Normal file
|
@ -0,0 +1,6 @@
|
|||
<!--
|
||||
SPDX-FileCopyrightText: 2024 NOI Techpark <digital@noi.bz.it>
|
||||
|
||||
SPDX-License-Identifier: CC0-1.0
|
||||
-->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 186.5 37.18"><defs><style>.a{isolation:isolate;}.b{fill:#1c1c1c;}</style></defs><title>logo</title><g class="a"><g class="a"><path class="b" d="M15.85,54.66a20.05,20.05,0,0,1-7-1.29,18.42,18.42,0,0,1-6.25-3.88l4.62-5.56a17.43,17.43,0,0,0,4.27,2.7,11.07,11.07,0,0,0,4.59,1,6.29,6.29,0,0,0,3.77-.93,3,3,0,0,0,1.23-2.53,2.83,2.83,0,0,0-.35-1.43,3.44,3.44,0,0,0-1-1.07A9.71,9.71,0,0,0,18,40.83l-2.12-.91-4.67-2a13.8,13.8,0,0,1-2.67-1.43,11.92,11.92,0,0,1-2.31-2.06A9.29,9.29,0,0,1,4.63,31.7,9.68,9.68,0,0,1,4,28.15,9.38,9.38,0,0,1,5,24,10.22,10.22,0,0,1,7.6,20.59a12.74,12.74,0,0,1,4-2.29,15.35,15.35,0,0,1,5.14-.82A16.59,16.59,0,0,1,23,18.69a15.66,15.66,0,0,1,5.36,3.52l-4.12,5.12a15.54,15.54,0,0,0-3.52-2.12,9.91,9.91,0,0,0-3.91-.75,5.73,5.73,0,0,0-3.32.86,2.73,2.73,0,0,0-1.24,2.39,2.36,2.36,0,0,0,.41,1.4,4,4,0,0,0,1.16,1.05,12.08,12.08,0,0,0,1.73.88c.66.27,1.37.58,2.14.91l4.62,1.87a12.6,12.6,0,0,1,5.2,3.63,9.27,9.27,0,0,1,1.9,6.1,10.19,10.19,0,0,1-3.55,7.78,13,13,0,0,1-4.26,2.42A16.79,16.79,0,0,1,15.85,54.66Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M35.48,54V18.14H58.09V25H43.57v8.3H56v6.82H43.57V54Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M73.76,54.66a20.13,20.13,0,0,1-7-1.29,18.29,18.29,0,0,1-6.24-3.88l4.62-5.56a17.18,17.18,0,0,0,4.26,2.7,11.14,11.14,0,0,0,4.59,1,6.27,6.27,0,0,0,3.77-.93A3,3,0,0,0,79,44.21a2.74,2.74,0,0,0-.36-1.43,3.44,3.44,0,0,0-1-1.07,9.22,9.22,0,0,0-1.64-.88l-2.12-.91-4.68-2a14,14,0,0,1-2.66-1.43,11.36,11.36,0,0,1-2.31-2.06,9.53,9.53,0,0,1-1.63-2.75,9.9,9.9,0,0,1-.6-3.55A9.51,9.51,0,0,1,62.87,24a10.49,10.49,0,0,1,2.64-3.41,12.9,12.9,0,0,1,4-2.29,15.31,15.31,0,0,1,5.14-.82,16.63,16.63,0,0,1,6.19,1.21,15.76,15.76,0,0,1,5.36,3.52l-4.13,5.12a15.12,15.12,0,0,0-3.52-2.12,9.83,9.83,0,0,0-3.9-.75,5.74,5.74,0,0,0-3.33.86,2.73,2.73,0,0,0-1.24,2.39,2.36,2.36,0,0,0,.41,1.4,4.1,4.1,0,0,0,1.16,1.05,12.08,12.08,0,0,0,1.73.88l2.15.91,4.62,1.87a12.66,12.66,0,0,1,5.2,3.63,9.33,9.33,0,0,1,1.89,6.1,10.14,10.14,0,0,1-3.54,7.78,13.09,13.09,0,0,1-4.27,2.42A16.71,16.71,0,0,1,73.76,54.66Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M108.36,54.66a17.49,17.49,0,0,1-6.44-1.18A15.15,15.15,0,0,1,96.62,50,16.35,16.35,0,0,1,93,44.24a22.08,22.08,0,0,1-1.32-8,21.51,21.51,0,0,1,1.38-7.95,17.81,17.81,0,0,1,3.68-5.91,15.55,15.55,0,0,1,5.39-3.68,16.83,16.83,0,0,1,6.49-1.27,13.59,13.59,0,0,1,6.22,1.4,17.22,17.22,0,0,1,4.56,3.28l-4.29,5.17a13.28,13.28,0,0,0-2.89-2.07,7.23,7.23,0,0,0-3.43-.8,7.72,7.72,0,0,0-3.44.8,8.18,8.18,0,0,0-2.81,2.28,11.5,11.5,0,0,0-1.86,3.63A15.85,15.85,0,0,0,100,36q0,5.57,2.36,8.61a7.59,7.59,0,0,0,6.33,3.05,8,8,0,0,0,3.93-1,12.09,12.09,0,0,0,3-2.39L120,49.38A14.55,14.55,0,0,1,108.36,54.66Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M138,54.66a16.61,16.61,0,0,1-6.63-1.29,14.4,14.4,0,0,1-5.14-3.71,17.17,17.17,0,0,1-3.33-5.89,24.22,24.22,0,0,1-1.18-7.86,24,24,0,0,1,1.18-7.84,16.29,16.29,0,0,1,3.33-5.78,14.17,14.17,0,0,1,5.14-3.57,18.34,18.34,0,0,1,13.26,0,14.09,14.09,0,0,1,5.14,3.6,16.39,16.39,0,0,1,3.32,5.8,23.82,23.82,0,0,1,1.19,7.79A24.22,24.22,0,0,1,153,43.77a17,17,0,0,1-3.32,5.89,14.49,14.49,0,0,1-5.14,3.71A16.61,16.61,0,0,1,138,54.66Zm0-7a6.7,6.7,0,0,0,5.83-3.16c1.43-2.11,2.14-5,2.14-8.6s-.71-6.4-2.14-8.42a7.12,7.12,0,0,0-11.66,0c-1.43,2-2.15,4.82-2.15,8.42s.72,6.49,2.15,8.6A6.69,6.69,0,0,0,138,47.67Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M161,54V18.14h8.31L178.65,36l3.52,7.92h.22c-.19-1.91-.4-4-.64-6.38s-.35-4.58-.35-6.71V18.14h7.7V54h-8.31l-9.35-17.87-3.52-7.81h-.22c.18,2,.4,4.1.63,6.38a62.75,62.75,0,0,1,.36,6.59V54Z" transform="translate(-2.59 -17.48)"/></g></g></svg>
|
After Width: | Height: | Size: 3.7 KiB |
6
local_run/data/logo/sfscon.svg
Normal file
6
local_run/data/logo/sfscon.svg
Normal file
|
@ -0,0 +1,6 @@
|
|||
<!--
|
||||
SPDX-FileCopyrightText: 2024 NOI Techpark <digital@noi.bz.it>
|
||||
|
||||
SPDX-License-Identifier: CC0-1.0
|
||||
-->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 186.5 37.18"><defs><style>.a{isolation:isolate;}.b{fill:#1c1c1c;}</style></defs><title>logo</title><g class="a"><g class="a"><path class="b" d="M15.85,54.66a20.05,20.05,0,0,1-7-1.29,18.42,18.42,0,0,1-6.25-3.88l4.62-5.56a17.43,17.43,0,0,0,4.27,2.7,11.07,11.07,0,0,0,4.59,1,6.29,6.29,0,0,0,3.77-.93,3,3,0,0,0,1.23-2.53,2.83,2.83,0,0,0-.35-1.43,3.44,3.44,0,0,0-1-1.07A9.71,9.71,0,0,0,18,40.83l-2.12-.91-4.67-2a13.8,13.8,0,0,1-2.67-1.43,11.92,11.92,0,0,1-2.31-2.06A9.29,9.29,0,0,1,4.63,31.7,9.68,9.68,0,0,1,4,28.15,9.38,9.38,0,0,1,5,24,10.22,10.22,0,0,1,7.6,20.59a12.74,12.74,0,0,1,4-2.29,15.35,15.35,0,0,1,5.14-.82A16.59,16.59,0,0,1,23,18.69a15.66,15.66,0,0,1,5.36,3.52l-4.12,5.12a15.54,15.54,0,0,0-3.52-2.12,9.91,9.91,0,0,0-3.91-.75,5.73,5.73,0,0,0-3.32.86,2.73,2.73,0,0,0-1.24,2.39,2.36,2.36,0,0,0,.41,1.4,4,4,0,0,0,1.16,1.05,12.08,12.08,0,0,0,1.73.88c.66.27,1.37.58,2.14.91l4.62,1.87a12.6,12.6,0,0,1,5.2,3.63,9.27,9.27,0,0,1,1.9,6.1,10.19,10.19,0,0,1-3.55,7.78,13,13,0,0,1-4.26,2.42A16.79,16.79,0,0,1,15.85,54.66Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M35.48,54V18.14H58.09V25H43.57v8.3H56v6.82H43.57V54Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M73.76,54.66a20.13,20.13,0,0,1-7-1.29,18.29,18.29,0,0,1-6.24-3.88l4.62-5.56a17.18,17.18,0,0,0,4.26,2.7,11.14,11.14,0,0,0,4.59,1,6.27,6.27,0,0,0,3.77-.93A3,3,0,0,0,79,44.21a2.74,2.74,0,0,0-.36-1.43,3.44,3.44,0,0,0-1-1.07,9.22,9.22,0,0,0-1.64-.88l-2.12-.91-4.68-2a14,14,0,0,1-2.66-1.43,11.36,11.36,0,0,1-2.31-2.06,9.53,9.53,0,0,1-1.63-2.75,9.9,9.9,0,0,1-.6-3.55A9.51,9.51,0,0,1,62.87,24a10.49,10.49,0,0,1,2.64-3.41,12.9,12.9,0,0,1,4-2.29,15.31,15.31,0,0,1,5.14-.82,16.63,16.63,0,0,1,6.19,1.21,15.76,15.76,0,0,1,5.36,3.52l-4.13,5.12a15.12,15.12,0,0,0-3.52-2.12,9.83,9.83,0,0,0-3.9-.75,5.74,5.74,0,0,0-3.33.86,2.73,2.73,0,0,0-1.24,2.39,2.36,2.36,0,0,0,.41,1.4,4.1,4.1,0,0,0,1.16,1.05,12.08,12.08,0,0,0,1.73.88l2.15.91,4.62,1.87a12.66,12.66,0,0,1,5.2,3.63,9.33,9.33,0,0,1,1.89,6.1,10.14,10.14,0,0,1-3.54,7.78,13.09,13.09,0,0,1-4.27,2.42A16.71,16.71,0,0,1,73.76,54.66Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M108.36,54.66a17.49,17.49,0,0,1-6.44-1.18A15.15,15.15,0,0,1,96.62,50,16.35,16.35,0,0,1,93,44.24a22.08,22.08,0,0,1-1.32-8,21.51,21.51,0,0,1,1.38-7.95,17.81,17.81,0,0,1,3.68-5.91,15.55,15.55,0,0,1,5.39-3.68,16.83,16.83,0,0,1,6.49-1.27,13.59,13.59,0,0,1,6.22,1.4,17.22,17.22,0,0,1,4.56,3.28l-4.29,5.17a13.28,13.28,0,0,0-2.89-2.07,7.23,7.23,0,0,0-3.43-.8,7.72,7.72,0,0,0-3.44.8,8.18,8.18,0,0,0-2.81,2.28,11.5,11.5,0,0,0-1.86,3.63A15.85,15.85,0,0,0,100,36q0,5.57,2.36,8.61a7.59,7.59,0,0,0,6.33,3.05,8,8,0,0,0,3.93-1,12.09,12.09,0,0,0,3-2.39L120,49.38A14.55,14.55,0,0,1,108.36,54.66Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M138,54.66a16.61,16.61,0,0,1-6.63-1.29,14.4,14.4,0,0,1-5.14-3.71,17.17,17.17,0,0,1-3.33-5.89,24.22,24.22,0,0,1-1.18-7.86,24,24,0,0,1,1.18-7.84,16.29,16.29,0,0,1,3.33-5.78,14.17,14.17,0,0,1,5.14-3.57,18.34,18.34,0,0,1,13.26,0,14.09,14.09,0,0,1,5.14,3.6,16.39,16.39,0,0,1,3.32,5.8,23.82,23.82,0,0,1,1.19,7.79A24.22,24.22,0,0,1,153,43.77a17,17,0,0,1-3.32,5.89,14.49,14.49,0,0,1-5.14,3.71A16.61,16.61,0,0,1,138,54.66Zm0-7a6.7,6.7,0,0,0,5.83-3.16c1.43-2.11,2.14-5,2.14-8.6s-.71-6.4-2.14-8.42a7.12,7.12,0,0,0-11.66,0c-1.43,2-2.15,4.82-2.15,8.42s.72,6.49,2.15,8.6A6.69,6.69,0,0,0,138,47.67Z" transform="translate(-2.59 -17.48)"/><path class="b" d="M161,54V18.14h8.31L178.65,36l3.52,7.92h.22c-.19-1.91-.4-4-.64-6.38s-.35-4.58-.35-6.71V18.14h7.7V54h-8.31l-9.35-17.87-3.52-7.81h-.22c.18,2,.4,4.1.63,6.38a62.75,62.75,0,0,1,.36,6.59V54Z" transform="translate(-2.59 -17.48)"/></g></g></svg>
|
After Width: | Height: | Size: 3.7 KiB |
85
local_run/db/auth_user.sql
Normal file
85
local_run/db/auth_user.sql
Normal file
|
@ -0,0 +1,85 @@
|
|||
--
|
||||
-- PostgreSQL database dump
|
||||
--
|
||||
|
||||
-- Dumped from database version 17.5 (Debian 17.5-1.pgdg120+1)
|
||||
-- Dumped by pg_dump version 17.5
|
||||
|
||||
SET statement_timeout = 0;
|
||||
SET lock_timeout = 0;
|
||||
SET idle_in_transaction_session_timeout = 0;
|
||||
SET transaction_timeout = 0;
|
||||
SET client_encoding = 'UTF8';
|
||||
SET standard_conforming_strings = on;
|
||||
SELECT pg_catalog.set_config('search_path', '', false);
|
||||
SET check_function_bodies = false;
|
||||
SET xmloption = content;
|
||||
SET client_min_messages = warning;
|
||||
SET row_security = off;
|
||||
|
||||
SET default_tablespace = '';
|
||||
|
||||
SET default_table_access_method = heap;
|
||||
|
||||
--
|
||||
-- Name: auth_user; Type: TABLE; Schema: public; Owner: mindshub
|
||||
--
|
||||
|
||||
CREATE TABLE public.auth_user (
|
||||
id integer NOT NULL,
|
||||
password character varying(128) NOT NULL,
|
||||
last_login timestamp with time zone,
|
||||
is_superuser boolean NOT NULL,
|
||||
username character varying(150) NOT NULL,
|
||||
first_name character varying(150) NOT NULL,
|
||||
last_name character varying(150) NOT NULL,
|
||||
email character varying(254) NOT NULL,
|
||||
is_staff boolean NOT NULL,
|
||||
is_active boolean NOT NULL,
|
||||
date_joined timestamp with time zone NOT NULL
|
||||
);
|
||||
|
||||
|
||||
ALTER TABLE public.auth_user OWNER TO mindshub;
|
||||
|
||||
--
|
||||
-- Name: auth_user_id_seq; Type: SEQUENCE; Schema: public; Owner: mindshub
|
||||
--
|
||||
|
||||
ALTER TABLE public.auth_user ALTER COLUMN id ADD GENERATED BY DEFAULT AS IDENTITY (
|
||||
SEQUENCE NAME public.auth_user_id_seq
|
||||
START WITH 1
|
||||
INCREMENT BY 1
|
||||
NO MINVALUE
|
||||
NO MAXVALUE
|
||||
CACHE 1
|
||||
);
|
||||
|
||||
|
||||
--
|
||||
-- Name: auth_user auth_user_pkey; Type: CONSTRAINT; Schema: public; Owner: mindshub
|
||||
--
|
||||
|
||||
ALTER TABLE ONLY public.auth_user
|
||||
ADD CONSTRAINT auth_user_pkey PRIMARY KEY (id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: auth_user auth_user_username_key; Type: CONSTRAINT; Schema: public; Owner: mindshub
|
||||
--
|
||||
|
||||
ALTER TABLE ONLY public.auth_user
|
||||
ADD CONSTRAINT auth_user_username_key UNIQUE (username);
|
||||
|
||||
|
||||
--
|
||||
-- Name: auth_user_username_6821ab7c_like; Type: INDEX; Schema: public; Owner: mindshub
|
||||
--
|
||||
|
||||
CREATE INDEX auth_user_username_6821ab7c_like ON public.auth_user USING btree (username varchar_pattern_ops);
|
||||
|
||||
|
||||
--
|
||||
-- PostgreSQL database dump complete
|
||||
--
|
||||
|
6
local_run/db/dump.sh
Normal file
6
local_run/db/dump.sh
Normal file
|
@ -0,0 +1,6 @@
|
|||
# SPDX-FileCopyrightText: 2024 NOI Techpark <digital@noi.bz.it>
|
||||
#
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
#/bin/bash
|
||||
docker exec -i c3nav-postgres-1 su - postgres -c 'pg_dump --clean --if-exists --no-owner --exclude-table=public.auth_user c3nav' > dump.sql
|
10780
local_run/db/dump.sql
Normal file
10780
local_run/db/dump.sql
Normal file
File diff suppressed because one or more lines are too long
6
local_run/db/restore.sh
Normal file
6
local_run/db/restore.sh
Normal file
|
@ -0,0 +1,6 @@
|
|||
# SPDX-FileCopyrightText: 2024 NOI Techpark <digital@noi.bz.it>
|
||||
#
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
#/bin/bash
|
||||
cat dump.sql | docker exec -i c3nav-postgres-1 su - postgres -c 'psql c3nav'
|
57
local_run/up.sh
Executable file
57
local_run/up.sh
Executable file
|
@ -0,0 +1,57 @@
|
|||
#cd ../docker
|
||||
#docker buildx rm c3nav-local 2>/dev/null || true
|
||||
#docker buildx create --name c3nav-local --driver=docker-container --bootstrap --use
|
||||
#cd ../local_run
|
||||
docker compose down --remove-orphans
|
||||
rm -rf data || true
|
||||
cp -r data-copy data
|
||||
chmod 777 data
|
||||
docker volume rm c3nav-postgres c3nav-redis || true
|
||||
docker volume create c3nav-postgres
|
||||
docker volume create c3nav-redis
|
||||
|
||||
# Start only postgres and redis first (no build since we pre-built)
|
||||
docker compose up -d postgres redis
|
||||
sleep 10
|
||||
|
||||
|
||||
cat ./db/auth_user.sql | docker exec -i local_run-postgres-1 su - postgres -c 'psql c3nav'
|
||||
|
||||
# Create Django superuser
|
||||
|
||||
sleep 1
|
||||
|
||||
# Load database dump before starting the main app
|
||||
cat ./db/dump.sql | docker exec -i local_run-postgres-1 su - postgres -c 'psql c3nav'
|
||||
|
||||
# Fix geometry access permissions for anonymous users
|
||||
docker exec -i local_run-postgres-1 psql -U postgres -d c3nav -c "UPDATE mapdata_space SET base_mapdata_accessible = true;"
|
||||
|
||||
# Now start the main services (no build since we pre-built)
|
||||
docker compose up --build -d
|
||||
echo "Creating Django superuser"
|
||||
# docker exec -i local_run-c3nav-core-1 sh -c "echo \"from django.contrib.auth.models import User; [0].set_password('admin'); User.objects.get(username='admin').save()\" | /app/env/bin/python manage.py shell"
|
||||
docker exec -i local_run-c3nav-core-1 sh -c "echo \"
|
||||
from django.contrib.auth.models import User
|
||||
user = User.objects.get_or_create(username='admin', defaults={'email': 'admin@example.com', 'is_superuser': True, 'is_staff': True})[0]
|
||||
user.set_password('admin')
|
||||
user.save()
|
||||
print('Password set successfully for user:', user.username)
|
||||
\" | /app/env/bin/python manage.py shell"
|
||||
sleep 30
|
||||
|
||||
|
||||
# Fake apply all migrations since we loaded from dump
|
||||
docker exec -i local_run-c3nav-core-1 sh -c '/app/env/bin/python manage.py migrate --fake'
|
||||
|
||||
docker compose ps -a
|
||||
docker exec -i local_run-c3nav-core-1 sh -c '/app/env/bin/python manage.py clearmapcache --include-history --include-geometries && /app/env/bin/python manage.py collectstatic -l --no-input'
|
||||
|
||||
# Fix NumPy compatibility issue
|
||||
echo "Applying NumPy compatibility fix..."
|
||||
docker exec -i local_run-c3nav-core-1 sed -i 's/np\.fromstring(/np.frombuffer(/g' /app/c3nav/mapdata/utils/cache/indexed.py
|
||||
|
||||
# Process map updates to rebuild cache with NumPy fix
|
||||
echo "Processing map updates to rebuild cache..."
|
||||
docker exec -i local_run-c3nav-core-1 sh -c '/app/env/bin/python manage.py processupdates'
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue