32 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| # To build the Docker image with the necessary dependencies:
 | |
| # docker build --tag sfconservancy.org-bookworm --file Dockerfile-debian-bookworm .
 | |
| #
 | |
| # To run the website, first ensure you have a
 | |
| # "conservancy/djangocommonsettings.py" file, with an appropriate database path.
 | |
| #
 | |
| # [FIRST RUN ONLY] If you don't have an existing copy of the database, run:
 | |
| # touch conservancy-website.sqlite3
 | |
| #
 | |
| # Start the application with:
 | |
| # docker run --tty --interactive --rm=true --publish=8000:8000 \
 | |
| #   --mount type=bind,source=$(pwd),target=/var/www/website \
 | |
| #   --mount type=bind,source=$(pwd)/conservancy-website.sqlite3,target=/var/lib/www/database/conservancy-website.sqlite3 \
 | |
| #   sfconservancy.org-bookworm:latest
 | |
| #
 | |
| # [FIRST RUN ONLY] In a separate terminal, run `docker ps` noting "CONTAINER ID".
 | |
| # Then run the database migrations with:
 | |
| # docker exec -it [CONTAINER ID] /usr/bin/python3 manage.py migrate
 | |
| #
 | |
| # Visit the site at http://127.0.0.1:8000
 | |
| 
 | |
| ARG DEBIAN_FRONTEND=noninteractive
 | |
| 
 | |
| FROM debian:bookworm
 | |
| RUN apt-get update && apt-get upgrade -y
 | |
| RUN apt-get install -y python3 python3-pip python3-wheel sqlite3
 | |
| RUN apt-get install -y python3-django python3-bs4 python3-html5lib python3-django-countries
 | |
| COPY ./requirements.txt /var/www/website/requirements.txt
 | |
| WORKDIR /var/www/website/
 | |
| RUN python3 -m pip install -r requirements.txt --break-system-packages
 | |
| RUN python3 -m pip freeze
 | |
| ENTRYPOINT ["python3", "/var/www/website/manage.py", "runserver", "0.0.0.0:8000"]
 |