add docker build instruction

This commit is contained in:
Dmitry Afanasyev 2023-01-18 02:19:50 +03:00
parent 51a7f5f578
commit a328058a58
3 changed files with 16 additions and 13 deletions

View File

@ -51,4 +51,6 @@ RUN export PATH="/root/.local/bin:$PATH" \
&& poetry lock \
&& poetry export -f requirements.txt --without-hashes --output requirements.txt
CMD [ "/bin/bash", "-c", "cp /code/* /poetry -r && chown ${USER}:$USER -R /poetry" ]

View File

@ -2,18 +2,24 @@
Used for poetry packages management with docker
required `docker` and `docker-compose`
required `docker` and optionally `docker-compose`
## Poetry lock for any version
## Generate poetry lock for any version
- copy `pyproject.toml` file to poetry dir
- set `python` version the same as in `pyproject.toml` and set `poetry` versions in Dockerfile
- copy `pyproject.toml` file to `poetry` dir
- In Dockerfile set `python` version the same as in `pyproject.toml` and `poetry` version which will be used
run
### Run from docker:
```bash
docker build --build-arg USER=$USER -t poetry-python . && docker run --rm -u $USER -v $PWD/poetry:/poetry poetry-python
```
### Or from docker-compose:
```bash
docker-compose up --build
```
script will generate `poetry.lock` and `requirements.txt` files
script will generate `poetry.lock` and `requirements.txt` files in `poetry` directory

View File

@ -4,6 +4,7 @@ services:
python:
image: "poetry-python:latest"
container_name: 'poetry-python'
user: ${USER}
build:
context: .
dockerfile: Dockerfile
@ -11,9 +12,3 @@ services:
- USER=${USER}
volumes:
- ./poetry/:/poetry/
command: >
bash -c "
cp /code/* /poetry -r
&& sleep 2
&& chown ${USER}:$USER -R /poetry
"