maxsivkov / py-taxer-api

taxer.ua API implementation
MIT License
8 stars 1 forks source link

Ошибка при сборке #1

Open Lion-killer opened 3 years ago

Lion-killer commented 3 years ago

При сборке контейнера с помощью docker-compose получаю ошибку:

Step 6/21 : RUN . venv/bin/activate && pip install --no-cache-dir . && find /app/venv ( -type d -a -name test -o -name tests ) -o ( -type f -a -name '.pyc' -o -name '.pyo' ) -exec rm -rf '{}' + ---> Running in 1031eef53dc1 ERROR: Directory '.' is not installable. Neither 'setup.py' nor 'pyproject.toml' found. The command '/bin/sh -c . venv/bin/activate && pip install --no-cache-dir . && find /app/venv ( -type d -a -name test -o -name tests ) -o ( -type f -a -name '.pyc' -o -name '.pyo' ) -exec rm -rf '{}' +' returned a non-zero code: 1 ERROR: Service 'taxerapi' failed to build : Build failed

maxsivkov commented 3 years ago

К сожалению не могу воспроизвести вашу ошибку. Укажите плиз ваше окружение

У меня на windows 10 + Docker version 20.10.5, build 55c4c88 c WSL2 собирается без проблем

docker build . --progress plain -t maxsivkov/taxerapi
#1 [internal] load build definition from Dockerfile
#1 sha256:ccbc158a23fa6616744a8b4efb0a62d0a7e15fc44a9e9e6911aff56f38835a53
#1 transferring dockerfile: 32B done
#1 DONE 0.0s

#2 [internal] load .dockerignore
#2 sha256:df253708c72e8512717cf6802b78db060e11c6705939f1e0f30a6be00394f1fd
#2 transferring context: 34B done
#2 DONE 0.0s

#4 [internal] load metadata for docker.io/library/python:3.9.0
#4 sha256:d6eaacf384701da77c68f1fd1ed3a7c796883ee83ad74a9178bef0c3c09af752
#4 DONE 0.0s

#3 [internal] load metadata for docker.io/library/python:3.9-alpine
#3 sha256:ff07ced7580f5ebc7fbe936f0e3c56efe304c990a9c90706ec83496ef73d5df7
#3 DONE 0.0s

#8 [build-env 1/6] FROM docker.io/library/python:3.9.0
#8 sha256:be716d997d3851390709b50fd52966b39b2581f5d3bab426cc36827be71e9bce
#8 DONE 0.0s

#5 [stage-1 1/4] FROM docker.io/library/python:3.9-alpine
#5 sha256:4660c7eb3f24004247e3b31277809ad9a71e48ff8f0eba6f130288b33c0eff89
#5 DONE 0.0s

#12 [internal] load build context
#12 sha256:76a1faa013886b64f9194cb9aad3d668b3a0cc18df9c615c11a505be1f59be7c
#12 transferring context: 1.98kB done
#12 DONE 0.0s

#9 [build-env 2/6] WORKDIR /app
#9 sha256:ea150132db804acee979b841adcd221eaf13d1d096cae80f9b752db0d5556aae
#9 CACHED

#10 [build-env 3/6] RUN python3 -m pip install virtualenv
#10 sha256:8c7c50a899e5234ee5097932eb9845bb66df7afb2f33eb139a8c301ef52d7b4b
#10 CACHED

#11 [build-env 4/6] RUN virtualenv -p `which python3` venv
#11 sha256:dee7fb43cf95f5452b2165d02f434b5579e3fb621c3aa6018759c104f2072359
#11 CACHED

#13 [build-env 5/6] COPY . ./
#13 sha256:59ab48c06ea88607b585b990ffd36f07113cda69f89328447e1403efd1faf2a3
#13 DONE 0.0s

#14 [build-env 6/6] RUN . venv/bin/activate && pip install --no-cache-dir . &&  find /app/venv ( -type d -a -name test -o -name tests ) -o ( -type f -a -name '*.pyc' -o -name '*.pyo' ) -exec rm -rf '{}' +
#14 sha256:a2a701a1ba2ad4202990cd6110888a354a04b906b6dad435860c2c8388d71f4d
#14 1.011 Processing /app
#14 1.750 Collecting selenium
#14 2.246   Downloading selenium-3.141.0-py2.py3-none-any.whl (904 kB)
#14 2.581 Collecting pyyaml
#14 2.615   Downloading PyYAML-5.4.1-cp39-cp39-manylinux1_x86_64.whl (630 kB)
#14 2.929 Collecting requests
#14 2.962   Downloading requests-2.25.1-py2.py3-none-any.whl (61 kB)
#14 3.038 Collecting flask-restx
#14 3.073   Downloading flask_restx-0.3.0-py2.py3-none-any.whl (5.3 MB)
#14 3.716 Collecting marshmallow-dataclass
#14 3.750   Downloading marshmallow_dataclass-8.4.1-py3-none-any.whl (15 kB)
#14 3.806 Collecting marshmallow-union
#14 3.841   Downloading marshmallow_union-0.1.15.post1-py2.py3-none-any.whl (4.6 kB)
#14 3.935 Collecting ujson
#14 3.969   Downloading ujson-4.0.2-cp39-cp39-manylinux1_x86_64.whl (179 kB)
#14 4.090 Collecting luqum
#14 4.124   Downloading luqum-0.11.0-py3-none-any.whl (49 kB)
#14 4.190 Collecting isodate
#14 4.225   Downloading isodate-0.6.0-py2.py3-none-any.whl (45 kB)
#14 4.408 Collecting jsonschema
#14 4.445   Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
#14 4.585 Collecting aniso8601>=0.82
#14 4.621   Downloading aniso8601-9.0.1-py2.py3-none-any.whl (52 kB)
#14 4.756 Collecting six>=1.3.0
#14 4.789   Downloading six-1.15.0-py2.py3-none-any.whl (10 kB)
#14 5.049 Collecting pytz
#14 5.082   Downloading pytz-2021.1-py2.py3-none-any.whl (510 kB)
#14 5.219 Collecting Flask>=0.8
#14 5.254   Downloading Flask-1.1.2-py2.py3-none-any.whl (94 kB)
#14 5.452 Collecting werkzeug
#14 5.490   Downloading Werkzeug-1.0.1-py2.py3-none-any.whl (298 kB)
#14 5.670 Collecting Jinja2>=2.10.1
#14 5.703   Downloading Jinja2-2.11.3-py2.py3-none-any.whl (125 kB)
#14 5.799 Collecting itsdangerous>=0.24
#14 5.840   Downloading itsdangerous-1.1.0-py2.py3-none-any.whl (16 kB)
#14 5.968 Collecting click>=5.1
#14 6.006   Downloading click-7.1.2-py2.py3-none-any.whl (82 kB)
#14 6.176 Collecting MarkupSafe>=0.23
#14 6.215   Downloading MarkupSafe-1.1.1-cp39-cp39-manylinux2010_x86_64.whl (32 kB)
#14 6.389 Collecting pyrsistent>=0.14.0
#14 6.422   Downloading pyrsistent-0.17.3.tar.gz (106 kB)
#14 6.629 Requirement already satisfied: setuptools in ./venv/lib/python3.9/site-packages (from jsonschema->flask-restx->py-taxer-api==0.1) (54.1.2)
#14 6.716 Collecting attrs>=17.4.0
#14 6.761   Downloading attrs-20.3.0-py2.py3-none-any.whl (49 kB)
#14 6.883 Collecting ply>=3.11
#14 6.922   Downloading ply-3.11-py2.py3-none-any.whl (49 kB)
#14 7.175 Collecting marshmallow<4.0,>=3.0.0
#14 7.208   Downloading marshmallow-3.11.1-py2.py3-none-any.whl (46 kB)
#14 7.292 Collecting typing-inspect
#14 7.327   Downloading typing_inspect-0.6.0-py3-none-any.whl (8.1 kB)
#14 7.446 Collecting idna<3,>=2.5
#14 7.484   Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
#14 7.540 Collecting chardet<5,>=3.0.2
#14 7.574   Downloading chardet-4.0.0-py2.py3-none-any.whl (178 kB)
#14 7.708 Collecting certifi>=2017.4.17
#14 7.744   Downloading certifi-2020.12.5-py2.py3-none-any.whl (147 kB)
#14 7.925 Collecting urllib3<1.27,>=1.21.1
#14 7.958   Downloading urllib3-1.26.4-py2.py3-none-any.whl (153 kB)
#14 8.098 Collecting typing-extensions>=3.7.4
#14 8.132   Downloading typing_extensions-3.7.4.3-py3-none-any.whl (22 kB)
#14 8.202 Collecting mypy-extensions>=0.3.0
#14 8.236   Downloading mypy_extensions-0.4.3-py2.py3-none-any.whl (4.5 kB)
#14 8.305 Building wheels for collected packages: py-taxer-api, pyrsistent
#14 8.305   Building wheel for py-taxer-api (setup.py): started
#14 8.565   Building wheel for py-taxer-api (setup.py): finished with status 'done'
#14 8.566   Created wheel for py-taxer-api: filename=py_taxer_api-0.1-py3-none-any.whl size=11712 sha256=e289ddbcc59e0a7fc54ccae65f4b5bf91cd18e9acf893d30e06fb9b2b7e3a932
#14 8.566   Stored in directory: /tmp/pip-ephem-wheel-cache-xbb2kjhz/wheels/48/5b/9e/815b53f5a8df8525f516b542a370cd64ff3531d89e06062b64
#14 8.568   Building wheel for pyrsistent (setup.py): started
#14 9.438   Building wheel for pyrsistent (setup.py): finished with status 'done'
#14 9.439   Created wheel for pyrsistent: filename=pyrsistent-0.17.3-cp39-cp39-linux_x86_64.whl size=124404 sha256=ef24501d4221d9976343464ae53b4460dd3e862be57a627014f9996fd5485195
#14 9.439   Stored in directory: /tmp/pip-ephem-wheel-cache-xbb2kjhz/wheels/00/cc/12/e712d3979a4aeee423b34a832d97c803e1a67659060315a7e0
#14 9.442 Successfully built py-taxer-api pyrsistent
#14 9.644 Installing collected packages: MarkupSafe, werkzeug, typing-extensions, six, pyrsistent, mypy-extensions, Jinja2, itsdangerous, click, attrs, urllib3, typing-inspect, pytz, ply, marshmallow, jsonschema, idna, Flask, chardet, certifi, aniso8601, ujson, selenium, requests, pyyaml, marshmallow-union, marshmallow-dataclass, luqum, isodate, flask-restx, py-taxer-api
#14 11.21 Successfully installed Flask-1.1.2 Jinja2-2.11.3 MarkupSafe-1.1.1 aniso8601-9.0.1 attrs-20.3.0 certifi-2020.12.5 chardet-4.0.0 click-7.1.2 flask-restx-0.3.0 idna-2.10 isodate-0.6.0 itsdangerous-1.1.0 jsonschema-3.2.0 luqum-0.11.0 marshmallow-3.11.1 marshmallow-dataclass-8.4.1 marshmallow-union-0.1.15.post1 mypy-extensions-0.4.3 ply-3.11 py-taxer-api-0.1 pyrsistent-0.17.3 pytz-2021.1 pyyaml-5.4.1 requests-2.25.1 selenium-3.141.0 six-1.15.0 typing-extensions-3.7.4.3 typing-inspect-0.6.0 ujson-4.0.2 urllib3-1.26.4 werkzeug-1.0.1
#14 DONE 11.9s

#6 [stage-1 2/4] RUN apk update &&     apk --no-cache --update add libstdc++ jq &&     rm -rf /var/cache/apk/*
#6 sha256:72385878dff1ecae60d3b7ada4e34a73430b84c01c94be0ad196548dfcefeb53
#6 CACHED

#7 [stage-1 3/4] WORKDIR /app
#7 sha256:ae6bdfcd3d84a736cfba44c8ae48a46c18d073f1c6bf9e4d1d4cdf475ad998a6
#7 CACHED

#15 [stage-1 4/4] COPY --from=build-env /app /app
#15 sha256:a1dce968d186063e0ed94a207f4db3ed71edec19814f99332abca61b9bad7293
#15 DONE 0.3s

#16 exporting to image
#16 sha256:e8c613e07b0b7ff33893b694f7759a10d42e180f2b4dc349fb57dc6b71dcab00
#16 exporting layers
#16 exporting layers 0.3s done
#16 writing image sha256:d86038ae806c33636985804711d706fd11e6f52748485da8a7b790565e6d05e3 done
#16 naming to docker.io/maxsivkov/taxerapi 0.0s done
#16 DONE 0.4s

Use 'docker scan' to run Snyk tests against images to find vulnerabilities and learn how to fix them
Lion-killer commented 3 years ago

Собираю через docker-compose Пробовал собирать на Windows 10 + docker 20.10.5 и на Raspbian GNU/Linux 10 (buster) + docker 20.10.5 - получаю одну и ту же ошибку, что я делаю не так?

Lion-killer commented 3 years ago

pi@hassio:~/Documents/taxer $ docker-compose up Building taxerapi Sending build context to Docker daemon 5.12kB Step 1/21 : FROM python:3.9.0 as build-env 3.9.0: Pulling from library/python ebde10b25101: Pull complete 05478d2a9ec4: Pull complete 39c5f002cc82: Pull complete 3d327c381029: Pull complete 9cb9b79ac754: Pull complete 13634106be2c: Pull complete 33552191cdf6: Pull complete e9e678532fe5: Pull complete 84c99ae2098c: Pull complete Digest: sha256:387f88e770ef8bbce23e57bc7627f71bde1d32888b3f08a857308444c3d29226 Status: Downloaded newer image for python:3.9.0 ---> 645efee383aa Step 2/21 : WORKDIR /app ---> Running in ed7a5892beb3 Removing intermediate container ed7a5892beb3 ---> bba6d0a7a9ff Step 3/21 : RUN python3 -m pip install virtualenv ---> Running in e1ba36157677 Collecting virtualenv Downloading virtualenv-20.4.3-py2.py3-none-any.whl (7.2 MB) Collecting appdirs<2,>=1.4.3 Downloading appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB) Collecting distlib<1,>=0.3.1 Downloading distlib-0.3.1-py2.py3-none-any.whl (335 kB) Collecting filelock<4,>=3.0.0 Downloading filelock-3.0.12-py3-none-any.whl (7.6 kB) Collecting six<2,>=1.9.0 Downloading six-1.15.0-py2.py3-none-any.whl (10 kB) Installing collected packages: six, filelock, distlib, appdirs, virtualenv Successfully installed appdirs-1.4.4 distlib-0.3.1 filelock-3.0.12 six-1.15.0 virtualenv-20.4.3 WARNING: You are using pip version 20.3.1; however, version 21.0.1 is available. You should consider upgrading via the '/usr/local/bin/python3 -m pip install --upgrade pip' command. Removing intermediate container e1ba36157677 ---> 9da66f1e613e Step 4/21 : RUN virtualenv -p which python3 venv ---> Running in 3726420a8d03 created virtual environment CPython3.9.0.final.0-32 in 1490ms creator CPython3Posix(dest=/app/venv, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/root/.local/share/virtualenv) added seed packages: pip==21.0.1, setuptools==54.1.2, wheel==0.36.2 activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator Removing intermediate container 3726420a8d03 ---> 7e36e24d3177 Step 5/21 : COPY . ./ ---> 8789f47a8227 Step 6/21 : RUN . venv/bin/activate && pip install --no-cache-dir . && find /app/venv ( -type d -a -name test -o -name tests ) -o ( -type f -a -name '.pyc' -o -name '.pyo' ) -exec rm -rf '{}' + ---> Running in 5cd3658849e2 ERROR: Directory '.' is not installable. Neither 'setup.py' nor 'pyproject.toml' found. The command '/bin/sh -c . venv/bin/activate && pip install --no-cache-dir . && find /app/venv ( -type d -a -name test -o -name tests ) -o ( -type f -a -name '.pyc' -o -name '.pyo' ) -exec rm -rf '{}' +' returned a non-zero code: 1 ERROR: Service 'taxerapi' failed to build : Build failed

Прикрепляю свои файлы: taxer.zip

maxsivkov commented 3 years ago

странная ситуация, у меня с вашими файлами все собирается и на вин10 и на убунту единственное что я заметил, так это у меня created virtual environment CPython3.9.0.final.0-64 in 383ms у вас created virtual environment CPython3.9.0.final.0-32 in 1490ms

похоже что подхватывается 32битный питон походу у вас 32битный докер?

maxsivkov commented 3 years ago

может быть у вас таки нету файла setup.py либо он внесен в .dockerignore? может он справедливо ошибку киадет?

Lion-killer commented 3 years ago

В каталог сборки нужно поместить все файлы из репозитария? Заранее прошу прощения - я новичок в докере

maxsivkov commented 3 years ago

В каталог сборки нужно поместить все файлы из репозитария? Заранее прошу прощения - я новичок в докере конечно можно также воспользоваться уже собраным образом из докерхаба maxsivkov/taxerapi

написано тут: https://github.com/maxsivkov/py-taxer-api/blob/master/doc/howto-run.md#%D0%B4%D0%BB%D1%8F-%D0%BB%D0%B5%D0%BD%D0%B8%D0%B2%D1%8B%D1%85-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D1%83%D1%8F-docker-%D0%B8-%D0%BE%D0%B1%D1%80%D0%B0%D0%B7-%D0%B8%D0%B7-dockerhub