pip install package得到SSLError:[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败(_ssl.c:661)

时间:2018-04-17 07:09:41

标签: docker pip docker-compose gitlab gitlab-ci

我使用自主机gitlab运行docker:dind image进行ci测试。 我运行命令apk add --no-cache py-pippip install docker-compose。 但它得到了以下错误。

Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/site-packages/pip/commands/install.py", line 324, in run
    requirement_set.prepare_files(finder)
  File "/usr/lib/python2.7/site-packages/pip/req/req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python2.7/site-packages/pip/req/req_set.py", line 620, in _prepare_file
    session=self.session, hashes=hashes)
  File "/usr/lib/python2.7/site-packages/pip/download.py", line 821, in unpack_url
    hashes=hashes
  File "/usr/lib/python2.7/site-packages/pip/download.py", line 659, in unpack_http_url
    hashes)
  File "/usr/lib/python2.7/site-packages/pip/download.py", line 853, in _download_http_url
    stream=True,
  File "/usr/lib/python2.7/site-packages/pip/_vendor/requests/sessions.py", line 488, in get
    return self.request('GET', url, **kwargs)
  File "/usr/lib/python2.7/site-packages/pip/download.py", line 386, in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/pip/_vendor/requests/sessions.py", line 475, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python2.7/site-packages/pip/_vendor/requests/sessions.py", line 596, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.py", line 47, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/usr/lib/python2.7/site-packages/pip/_vendor/requests/adapters.py", line 497, in send
    raise SSLError(e, request=request)
SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661)

我尝试使用- pip install requests==2.15.1; pip uninstall -y certifipip install -upgrade pip --trusted-host pypi.python.org 但我仍然有这个错误。我不确定我的gitlab配置是错误的还是docker镜像。请帮我解决这个问题。

这是我的gitab-ci.yml

image: docker:latest
services:
  - docker:dind

# When using dind, it's wise to use the overlayfs driver for
# improved performance.
variables:
  DOCKER_DRIVER: overlay2
  BUILD_TAG: $CI_JOB_NAME-$CI_JOB_ID

stages:
  - test

before_script:
  - apk add --no-cache py-pip
  - pip install requests==2.15.1
  - pip uninstall -y certifi
  - pip install docker-compose

after_script:
  - docker system prune --filter "label=CI-TEST=$BUILD_TAG" -af

test:
  stage: test
  script:
    - sed -i 's/TAG/'$CI_JOB_ID'/g' ./docker/Dockerfile-web
    - sed -i 's/ci-label/'$BUILD_TAG'/g' ./docker/Dockerfile-base
    - sed -i 's/ci-label/'$BUILD_TAG'/g' ./docker/docker-compose-test.yml
    - sed -i 's/ci-network/'$BUILD_TAG'/g' ./docker/docker-compose-test.yml
    - docker build -f docker/Dockerfile-base --build-arg DOCKER_TEST=true -t bizcloud_base:$CI_JOB_ID .
    - docker-compose -f docker/docker-compose-test.yml up --build --abort-on-container-exit

0 个答案:

没有答案