gordon icon indicating copy to clipboard operation
gordon copied to clipboard

Docker - pip support is not available at the moment

Open JDFagan opened this issue 8 years ago • 3 comments

https://github.com/jorgebastida/gordon/blob/master/examples/docker/helloworld/settings.yml

Just wondering if you have a issue opened already regarding still needing pip support?

I'm interested in using this tool and having ability to build the Python lambdas in environment that is near identical to the lambda env that it runs (especially if a pip install requires some dependent machine specific install which may need machine dependent library support outside of pip - for example, the pymssql package (so lambda can read/write to SQL Server based RDS database) is good use case that depends on FreeTDS which is pre-requisite machine specific installation needed before doing pip install pymssql - http://pymssql.org/en/latest/intro.html.

JDFagan avatar Jun 02 '16 23:06 JDFagan

You might want to retry this. The current lambci/lambda:build-python2.7 Docker image includes pip and virtualenv.

neekolas avatar Jun 17 '16 07:06 neekolas

FYI, I tried the instructions for using pip in the docker image (here), but it looks like these build instructions do not actually override the defaults.

From my jenkins log:

Building project...
  0001_p.json
      cp -Rf * /var/lib/jenkins/.gordon/tmp4Kl5h1
      pip install --install-option="--prefix=" -r requirements.txt -q -t /var/lib/jenkins/.gordon/tmp4Kl5h1 
      /usr/local/lib/python2.7/dist-packages/pip/commands/install.py:194: UserWarning: Disabling all use of wheels due to the use of --build-options / --global-options / --install-options.
        cmdoptions.check_install_build_global(options)
      
      cd /var/lib/jenkins/.gordon/tmp4Kl5h1 && find . -name "*.pyc" -delete
      cp -Rf * /var/lib/jenkins/.gordon/tmpnrqvNQ
      echo "[install]\nprefix=" > /var/lib/jenkins/.gordon/tmpnrqvNQ/setup.cfg
      docker run --rm -v $HOME/.pip/pip.conf:/root/.pip/pip.conf -v $HOME/.ssh:/root/.ssh -v /var/lib/jenkins/.gordon/tmpnrqvNQ:/var/task lambci/lambda:build-python2.7 pip install -r requirements.txt -q -t /var/lib/jenkins/.gordon/tmpnrqvNQ

  0002_pr_r.json
  0003_r.json

astewart-twist avatar Jun 20 '17 18:06 astewart-twist

@astewart-twist Could you try renaming requirements.txt to requirements-docker.txt so that gordon does not automatically pick it up.

heri16 avatar Dec 13 '17 05:12 heri16