Compare commits
2 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
c37470a53d | |
|
|
230e85d3d0 |
|
|
@ -29,7 +29,7 @@ load_dotenv()
|
||||||
SECRET_KEY = os.getenv('SECRET_KEY')
|
SECRET_KEY = os.getenv('SECRET_KEY')
|
||||||
|
|
||||||
# SECURITY WARNING: don't run with debug turned on in production!
|
# SECURITY WARNING: don't run with debug turned on in production!
|
||||||
DEBUG = False
|
DEBUG = True
|
||||||
|
|
||||||
ALLOWED_HOSTS = ['localhost', '127.0.0.1', 'beyond-heroes.com', 'www.beyond-heroes.com']
|
ALLOWED_HOSTS = ['localhost', '127.0.0.1', 'beyond-heroes.com', 'www.beyond-heroes.com']
|
||||||
|
|
||||||
|
|
|
||||||
40
Dockerfile
40
Dockerfile
|
|
@ -1,34 +1,12 @@
|
||||||
# Use an official Python runtime as a parent image
|
# Use the official MariaDB base image
|
||||||
FROM python:3.11-slim
|
FROM mariadb:latest
|
||||||
|
|
||||||
# Set environment variables
|
# Set environment variables
|
||||||
ENV PYTHONDONTWRITEBYTECODE=1
|
ENV MARIADB_ROOT_PASSWORD=DB_ROOTPW
|
||||||
ENV PYTHONUNBUFFERED=1
|
ENV MARIADB_ROOT_HOST=%
|
||||||
|
ENV MARIADB_DATABASE=DBNAME
|
||||||
|
ENV MARIADB_USER=DB_USER
|
||||||
|
ENV MARIADB_PASSWORD=DB_PASSWORD
|
||||||
|
|
||||||
# Set working directory
|
# Expose the MariaDB port
|
||||||
WORKDIR /app
|
EXPOSE 3306
|
||||||
|
|
||||||
# Install system dependencies
|
|
||||||
RUN apt-get update && apt-get install -y \
|
|
||||||
build-essential \
|
|
||||||
libpq-dev \
|
|
||||||
default-libmysqlclient-dev \
|
|
||||||
pkg-config \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# Install Python dependencies
|
|
||||||
COPY requirements.txt /app/
|
|
||||||
RUN pip install --no-cache-dir -r requirements.txt
|
|
||||||
RUN pip install gunicorn
|
|
||||||
|
|
||||||
# Copy project files
|
|
||||||
COPY . /app/
|
|
||||||
|
|
||||||
# Expose the port on which the application will run
|
|
||||||
EXPOSE 3030
|
|
||||||
|
|
||||||
# Define environment variable for Gunicorn
|
|
||||||
ENV GUNICORN_CMD_ARGS="--bind 0.0.0.0:3030"
|
|
||||||
|
|
||||||
# Run Gunicorn server with your Django application
|
|
||||||
CMD ["gunicorn", "BH.wsgi:application"]
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
First of change the Env variables in the .env and the docker-compose.yml file to your own values.
|
||||||
|
|
||||||
|
Then create the docker container and run it with the following command:
|
||||||
|
```bash
|
||||||
|
docker-compose up --build
|
||||||
|
```
|
||||||
|
This starts the Database \
|
||||||
|
Then run the following command to create the database tables:
|
||||||
|
```bash
|
||||||
|
python manage.py migrate
|
||||||
|
python manage.py migrate --run-syncdb
|
||||||
|
```
|
||||||
|
|
||||||
|
At last, run the following command to start the server:
|
||||||
|
```bash
|
||||||
|
python manage.py runserver 3030
|
||||||
|
```
|
||||||
|
|
@ -1,15 +1,15 @@
|
||||||
|
version: '3.8'
|
||||||
|
|
||||||
services:
|
services:
|
||||||
django:
|
mariadb:
|
||||||
build: .
|
build: .
|
||||||
env_file:
|
container_name: mariadb
|
||||||
- .env
|
restart: unless-stopped
|
||||||
volumes:
|
environment:
|
||||||
- .:/app
|
MARIADB_ROOT_PASSWORD: 'DB_ROOTPW'
|
||||||
|
MARIADB_ROOT_HOST: '%'
|
||||||
|
MARIADB_DATABASE: 'DBNAME'
|
||||||
|
MARIADB_USER: 'DB_USER'
|
||||||
|
MARIADB_PASSWORD: 'DB_PASSWORD'
|
||||||
ports:
|
ports:
|
||||||
- "3030:3030"
|
- "3306:3306"
|
||||||
network_mode: "host"
|
|
||||||
command: >
|
|
||||||
sh -c "python manage.py makemigrations blog --noinput &&
|
|
||||||
python manage.py migrate --noinput &&
|
|
||||||
python manage.py collectstatic --noinput &&
|
|
||||||
gunicorn BH.wsgi:application --bind 0.0.0.0:3030 --workers ${GUNICORN_WORKERS:-3}"
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue