https://github.com/8area8/p10__django-deploy
P8 deployment. Docker and AWS (EC2, RDS).
https://github.com/8area8/p10__django-deploy
django docker sentry student travis
Last synced: 5 months ago
JSON representation
P8 deployment. Docker and AWS (EC2, RDS).
- Host: GitHub
- URL: https://github.com/8area8/p10__django-deploy
- Owner: 8area8
- Created: 2018-11-24T15:09:45.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-03-10T17:19:26.000Z (almost 7 years ago)
- Last Synced: 2025-06-08T08:04:49.521Z (7 months ago)
- Topics: django, docker, sentry, student, travis
- Language: Dockerfile
- Homepage: http://ec2-34-238-138-167.compute-1.amazonaws.com
- Size: 25.4 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Pur Beurre deployment
  
## News
- 06/01/2019 : release **1.0** done. All features are implemented.
## Presentation

This project aims to deploy an online application, without the need for simplified cloud services patches.
## Specificities
- main server on AWS EC2
- database on AWS RDS
- set up with Docker and Docker-compose
- deployment of Celery and Redis as services
- use of a cron service for weekly tasks
- use of travis for continuous deployment
- use of sentry for efficient log management
- use of Gunicorn and Nginx for HTTP communication
## Getting Started
You can clone this repository to your local drive.
This project uses a submodule that contains the application. Make sure to import the submodule by executing the code below, from the root of the project :
```bash
git submodule update --remote --merge
```
### Prerequisites
to use it, you'll need:
- docker
- an AWS account
- a Sentry account
- a Travis account
### Installing
[Install docker and docker-compose](https://www.docker.com/). Create your own database. Finally, create your ```.env``` in the root (see the part : "setting configuration").
### Local testing
Simply run :
```bash
docker-compose up
```
#### Settings configurations
```conf
# .env file
DATABASE_NAME=
DATABASE_USER=
DATABASE_PASSWORD=
DATABASE_HOST=
DATABASE_PORT=
REDIS_PORT=
PERSONAL_PASSWORD=
GOOGLE_KEY=
GOOGLE_PASS=
SENTRY_DNS=
```
## Running the tests
Thanks to Travis, tests are automatically launched with each push to your Github account. You can still run them manually from the "django_app" container, when it is running.
## Deployment
Thanks to docker, the deployment is relatively simple. The deployment is done in the same way as locally. Follow the same process locally to deploy your application.
## Authors
Mikael Briolet - Initial work - OpenClassroom
## License
MIT license.