mirror of
https://gitlab.crans.org/bde/nk20
synced 2024-11-26 18:37:12 +00:00
Docker instruction before Docker compose
This commit is contained in:
parent
bf7b187048
commit
55be6be6c5
10
Dockerfile
10
Dockerfile
@ -15,12 +15,12 @@ RUN apt-get update && \
|
|||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Instal PyPI requirements
|
# Instal PyPI requirements
|
||||||
COPY requirements.txt /code/
|
COPY requirements.txt /var/www/note_kfet/
|
||||||
RUN pip3 install -r /code/requirements.txt --no-cache-dir
|
RUN pip3 install -r /var/www/note_kfet/requirements.txt --no-cache-dir
|
||||||
|
|
||||||
# Copy code
|
# Copy code
|
||||||
WORKDIR /code
|
WORKDIR /var/www/note_kfet
|
||||||
COPY . /code/
|
COPY . /var/www/note_kfet/
|
||||||
|
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
ENTRYPOINT ["/code/entrypoint.sh"]
|
ENTRYPOINT ["/var/www/note_kfet/entrypoint.sh"]
|
||||||
|
42
README.md
42
README.md
@ -144,30 +144,44 @@ Sinon vous pouvez suivre les étapes ici.
|
|||||||
|
|
||||||
Il est possible de travailler sur une instance Docker.
|
Il est possible de travailler sur une instance Docker.
|
||||||
|
|
||||||
1. Cloner le dépôt là où vous voulez :
|
Pour construire l'image Docker `nk20`,
|
||||||
|
|
||||||
$ git clone git@gitlab.crans.org:bde/nk20.git
|
```
|
||||||
|
git clone https://gitlab.crans.org/bde/nk20/ && cd nk20
|
||||||
|
docker build . -t nk20
|
||||||
|
```
|
||||||
|
|
||||||
2. Copiez le fichier `.env_example` à la racine du projet vers le fichier `.env`,
|
Ensuite pour lancer la note Kfet en tant que vous (option `-u`),
|
||||||
et mettez à jour vos variables d'environnement
|
l'exposer sur son port 80 (option `-p`) et monter le code en écriture (option `-v`),
|
||||||
|
|
||||||
3. Dans le fichier `docker_compose.yml`, qu'on suppose déjà configuré,
|
```
|
||||||
ajouter les lignes suivantes, en les adaptant à la configuration voulue :
|
docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd):/var/www/note_kfet/" -p 80:8080 nk20
|
||||||
|
```
|
||||||
|
|
||||||
|
Si vous souhaitez lancer une commande spéciale, vous pouvez l'ajouter à la fin, par exemple,
|
||||||
|
|
||||||
|
```
|
||||||
|
docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd):/var/www/note_kfet/" -p 80:8080 nk20 python3 ./manage.py createsuperuser
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Avec Docker Compose
|
||||||
|
|
||||||
|
On vous conseilles de faire un fichier d'environnement `.env` en prenant exemple sur `.env_example`.
|
||||||
|
|
||||||
|
Pour par exemple utiliser le Docker de la note Kfet avec Traefik pour réaliser le HTTPS,
|
||||||
|
|
||||||
|
```YAML
|
||||||
nk20:
|
nk20:
|
||||||
build: /chemin/vers/nk20
|
build: /chemin/vers/le/code/nk20
|
||||||
volumes:
|
volumes:
|
||||||
- /chemin/vers/nk20:/code/
|
- /chemin/vers/le/code/nk20:/var/www/note_kfet/
|
||||||
env_file: /chemin/vers/nk20/.env
|
env_file: /chemin/vers/le/code/nk20/.env
|
||||||
restart: always
|
restart: always
|
||||||
labels:
|
labels:
|
||||||
- traefik.domain=ndd.example.com
|
- traefik.domain=ndd.example.com
|
||||||
- traefik.frontend.rule=Host:ndd.example.com
|
- traefik.frontend.rule=Host:ndd.example.com
|
||||||
- traefik.port=8000
|
- traefik.port=8080
|
||||||
|
```
|
||||||
4. Enjoy :
|
|
||||||
|
|
||||||
$ docker-compose up -d nk20
|
|
||||||
|
|
||||||
### Lancer un serveur de développement
|
### Lancer un serveur de développement
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user