mirror of
				https://gitlab.crans.org/bde/nk20
				synced 2025-10-31 07:49:57 +01:00 
			
		
		
		
	Docker instruction before Docker compose
This commit is contained in:
		
							
								
								
									
										10
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								Dockerfile
									
									
									
									
									
								
							| @@ -15,12 +15,12 @@ RUN apt-get update && \ | ||||
|     rm -rf /var/lib/apt/lists/* | ||||
|  | ||||
| # Instal PyPI requirements | ||||
| COPY requirements.txt /code/ | ||||
| RUN pip3 install -r /code/requirements.txt --no-cache-dir | ||||
| COPY requirements.txt /var/www/note_kfet/ | ||||
| RUN pip3 install -r /var/www/note_kfet/requirements.txt --no-cache-dir | ||||
|  | ||||
| # Copy code | ||||
| WORKDIR /code | ||||
| COPY . /code/ | ||||
| WORKDIR /var/www/note_kfet | ||||
| COPY . /var/www/note_kfet/ | ||||
|  | ||||
| EXPOSE 8080 | ||||
| ENTRYPOINT ["/code/entrypoint.sh"] | ||||
| ENTRYPOINT ["/var/www/note_kfet/entrypoint.sh"] | ||||
|   | ||||
							
								
								
									
										50
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										50
									
								
								README.md
									
									
									
									
									
								
							| @@ -144,30 +144,44 @@ Sinon vous pouvez suivre les étapes ici. | ||||
|  | ||||
| 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`, | ||||
|     et  mettez à jour vos variables d'environnement | ||||
| Ensuite pour lancer la note Kfet en tant que vous (option `-u`), | ||||
| 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 | ||||
| ``` | ||||
|  | ||||
|          nk20: | ||||
|            build: /chemin/vers/nk20 | ||||
|            volumes: | ||||
|              - /chemin/vers/nk20:/code/ | ||||
|            env_file: /chemin/vers/nk20/.env | ||||
|            restart: always | ||||
|            labels: | ||||
|              - traefik.domain=ndd.example.com | ||||
|              - traefik.frontend.rule=Host:ndd.example.com | ||||
|              - traefik.port=8000 | ||||
| Si vous souhaitez lancer une commande spéciale, vous pouvez l'ajouter à la fin, par exemple, | ||||
|  | ||||
| 4.  Enjoy : | ||||
| ``` | ||||
| docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd):/var/www/note_kfet/" -p 80:8080 nk20 python3 ./manage.py createsuperuser | ||||
| ``` | ||||
|  | ||||
|         $ docker-compose up -d nk20 | ||||
| #### 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: | ||||
|   build: /chemin/vers/le/code/nk20 | ||||
|   volumes: | ||||
|     - /chemin/vers/le/code/nk20:/var/www/note_kfet/ | ||||
|   env_file: /chemin/vers/le/code/nk20/.env | ||||
|   restart: always | ||||
|   labels: | ||||
|     - traefik.domain=ndd.example.com | ||||
|     - traefik.frontend.rule=Host:ndd.example.com | ||||
|     - traefik.port=8080 | ||||
| ``` | ||||
|  | ||||
| ### Lancer un serveur de développement | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user