Add dev environment using docker
This commit is contained in:
parent
d13687a910
commit
242066ada4
4 changed files with 79 additions and 0 deletions
13
deploy/dev/Dockerfile.backend
Normal file
13
deploy/dev/Dockerfile.backend
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
FROM python:3.11-bookworm
|
||||||
|
LABEL authors="lagertonne"
|
||||||
|
|
||||||
|
ENV PYTHONUNBUFFERED 1
|
||||||
|
RUN mkdir /code
|
||||||
|
WORKDIR /code
|
||||||
|
COPY requirements.dev.txt /code/
|
||||||
|
COPY requirements.prod.txt /code/
|
||||||
|
RUN apt update && apt install -y mariadb-client
|
||||||
|
RUN pip install -r requirements.dev.txt
|
||||||
|
RUN pip install -r requirements.prod.txt
|
||||||
|
RUN pip install mysqlclient
|
||||||
|
COPY .. /code/
|
6
deploy/dev/Dockerfile.frontend
Normal file
6
deploy/dev/Dockerfile.frontend
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
FROM docker.io/node:22
|
||||||
|
|
||||||
|
RUN mkdir /web
|
||||||
|
WORKDIR /web
|
||||||
|
COPY package.json /web/
|
||||||
|
RUN npm install
|
33
deploy/dev/docker-compose.yml
Normal file
33
deploy/dev/docker-compose.yml
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
services:
|
||||||
|
core:
|
||||||
|
build:
|
||||||
|
context: ../../core
|
||||||
|
dockerfile: ../deploy/dev/Dockerfile.backend
|
||||||
|
command: bash -c 'python manage.py migrate && python manage.py runserver 0.0.0.0:8000'
|
||||||
|
environment:
|
||||||
|
- HTTP_HOST=core
|
||||||
|
#- DATABASE_URL
|
||||||
|
volumes:
|
||||||
|
- ../../core:/code
|
||||||
|
ports:
|
||||||
|
- "8000:8000"
|
||||||
|
|
||||||
|
frontend:
|
||||||
|
build:
|
||||||
|
context: ../../web
|
||||||
|
dockerfile: ../deploy/dev/Dockerfile.frontend
|
||||||
|
command: npm run serve
|
||||||
|
volumes:
|
||||||
|
- ../../web:/web:ro
|
||||||
|
- /web/node_modules
|
||||||
|
- ./vue.config.js:/web/vue.config.js
|
||||||
|
ports:
|
||||||
|
- "8080:8080"
|
||||||
|
|
||||||
|
db:
|
||||||
|
image: mariadb
|
||||||
|
environment:
|
||||||
|
MARIADB_RANDOM_ROOT_PASSWORD: true
|
||||||
|
MARIADB_DATABASE: system3
|
||||||
|
MARIADB_USER: system3
|
||||||
|
MARIADB_PASSWORD: system3
|
27
deploy/dev/vue.config.js
Normal file
27
deploy/dev/vue.config.js
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
// vue.config.js
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
devServer: {
|
||||||
|
headers: {
|
||||||
|
"Access-Control-Allow-Origin": "*",
|
||||||
|
"Access-Control-Allow-Headers": "*",
|
||||||
|
"Access-Control-Allow-Methods": "*"
|
||||||
|
},
|
||||||
|
proxy: {
|
||||||
|
'^/media/2': {
|
||||||
|
target: 'http://core:8000/',
|
||||||
|
},
|
||||||
|
'^/api/2': {
|
||||||
|
target: 'http://core:8000/',
|
||||||
|
},
|
||||||
|
'^/api/1': {
|
||||||
|
target: 'http://core:8000/',
|
||||||
|
},
|
||||||
|
'^/ws/2': {
|
||||||
|
target: 'http://core:8000/',
|
||||||
|
ws: true,
|
||||||
|
logLevel: 'debug',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue