prepared for postgres in docker
This commit is contained in:
parent
0c24b93605
commit
1f5a5ab95e
2
.env
Normal file
2
.env
Normal file
|
@ -0,0 +1,2 @@
|
|||
COMPOSE_FILE=docker-compose.dev.yml
|
||||
COMPOSE_PROJECT_NAME=candymat
|
4
backend/.env-backend
Normal file
4
backend/.env-backend
Normal file
|
@ -0,0 +1,4 @@
|
|||
POSTGRES_PASSWORD=postgres!dev
|
||||
POSTGRES_USER=candymat
|
||||
POSTGRES_DB=candymat_db
|
||||
POSTGRES_SCHEMA=candymat_data
|
6
backend/Dockerfile.postgres
Normal file
6
backend/Dockerfile.postgres
Normal file
|
@ -0,0 +1,6 @@
|
|||
FROM postgres:11.5
|
||||
|
||||
COPY ./sql/* /docker-entrypoint-initdb.d/
|
||||
|
||||
RUN localedef -i de_DE -c -f UTF-8 -A /usr/share/locale/locale.alias de_DE.UTF-8
|
||||
ENV LANG de_DE.utf8
|
|
@ -1,5 +1,10 @@
|
|||
/connect candymat_db
|
||||
|
||||
-- Create schema for candymat_data
|
||||
CREATE SCHEMA candymat_data;
|
||||
|
||||
-- Create table for users
|
||||
CREATE TABLE public."user"
|
||||
CREATE TABLE candymat_data."user"
|
||||
(
|
||||
login character varying(8) primary key,
|
||||
name character varying(300),
|
||||
|
@ -8,7 +13,7 @@ CREATE TABLE public."user"
|
|||
);
|
||||
|
||||
-- Create table for user groups
|
||||
CREATE TABLE public."group"
|
||||
CREATE TABLE candymat_data."group"
|
||||
(
|
||||
id serial primary key,
|
||||
name character varying(300) UNIQUE,
|
||||
|
@ -16,16 +21,16 @@ CREATE TABLE public."group"
|
|||
);
|
||||
|
||||
-- Create table for relation of users and groups
|
||||
CREATE TABLE public.user_group
|
||||
CREATE TABLE candymat_data.user_group
|
||||
(
|
||||
group_id integer REFERENCES public."group" (id) ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
user_login character varying(8) REFERENCES public."user" (login) ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
group_id integer REFERENCES candymat_data."group" (id) ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
user_login character varying(8) REFERENCES candymat_data."user" (login) ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
primary key (group_id, user_login)
|
||||
);
|
||||
|
||||
|
||||
-- Create table for catgeories
|
||||
CREATE TABLE public.category
|
||||
-- Create table for categories
|
||||
CREATE TABLE candymat_data.category
|
||||
(
|
||||
id serial primary key,
|
||||
title character varying(300) UNIQUE NOT NULL,
|
||||
|
@ -33,19 +38,19 @@ CREATE TABLE public.category
|
|||
);
|
||||
|
||||
-- Create table for questions
|
||||
CREATE TABLE public.question
|
||||
CREATE TABLE candymat_data.question
|
||||
(
|
||||
id serial primary key,
|
||||
category_id integer REFERENCES public."category" (id) ON UPDATE CASCADE ON DELETE SET NULL,
|
||||
category_id integer REFERENCES candymat_data"category" (id) ON UPDATE CASCADE ON DELETE SET NULL,
|
||||
text character varying(3000) NOT NULL,
|
||||
description character varying(5000)
|
||||
);
|
||||
|
||||
-- Create table for answers
|
||||
CREATE TABLE public.answer
|
||||
CREATE TABLE candymat_data.answer
|
||||
(
|
||||
question_id integer REFERENCES public."question" (id) ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
user_login character varying(8) REFERENCES public."user" ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
question_id integer REFERENCES candymat_data."question" (id) ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
user_login character varying(8) REFERENCES candymat_data."user" ON UPDATE CASCADE ON DELETE CASCADE,
|
||||
position integer NOT NULL,
|
||||
text character varying(5000),
|
||||
primary key (question_id, user_login)
|
||||
|
|
15
docker-compose.dev.yml
Normal file
15
docker-compose.dev.yml
Normal file
|
@ -0,0 +1,15 @@
|
|||
version: '3.1'
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: candymat-postgres:11.5
|
||||
build:
|
||||
dockerfile: ./backend/Dockerfile.postgres
|
||||
context: ./backend/
|
||||
env_file: ./backend/.env-backend
|
||||
ports:
|
||||
- "5432:5432"
|
||||
restart: always
|
||||
networks:
|
||||
- backend
|
||||
|
17
docker-compose.prod.yml
Normal file
17
docker-compose.prod.yml
Normal file
|
@ -0,0 +1,17 @@
|
|||
version: '3.1'
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: candymat-postgres:11.5
|
||||
build:
|
||||
dockerfile: ./backend/Dockerfile.postgres
|
||||
context: ./backend/
|
||||
env_file: ./backend/.env-backend
|
||||
ports:
|
||||
- "5432:5432"
|
||||
restart: always
|
||||
volumes:
|
||||
- "db-data:/var/lib/postgresql/data"
|
||||
networks:
|
||||
- backend
|
||||
|
Loading…
Reference in a new issue