I have tried to install yFinance following the instruction from https://www.quantconnect.com/docs/v2/lean-cli/projects/libraries/third-party-libraries and got the following error:

Context information:
  Hostname: [** MASKED **]
  Username: ecs-user
  Python version: 3.12.3 (main, Jan 17 2025, 18:03:48) [GCC 13.3.0]
  OS: Linux-6.8.0-51-generic-x86_64-with-glibc2.39
  Lean CLI version: 1.0.216
  .NET version: Not installed
  VS Code version: 
  VS Code installed versions: 
  Docker version: 27.5.1, build 9f9e405


--> POST https://www.quantconnect.com/api/v2/organizations/list
Request response: 
{"organizations":[{"id":"81ad0f0546a5a4cdfaa1edb070376008","name":"kubid","type":"Researcher","ownerName":"You","members":1,"selected":false,"skylightSync":1,"preferred":true,"profileImage":"https:\/\/cdn.quantconnect.com\/i\/tu\/organization-default-icon.
png"}],"success":true}
--> POST https://www.quantconnect.com/api/v2/organizations/read with data:
{
    "organizationId": "81ad0f0546a5a4cdfaa1edb070376008"
}
Request response: 
{"organization":{"id":"81ad0f0546a5a4cdfaa1edb070376008","allowSkylightSync":1,"seats":1,"type":"researcher","billing":null,"credit":{"movements":[],"movementsCount":0,"balance":0,"automaticCreditUsage":0,"automaticCreditTopUp":0,"creditTopUpMin":500,"cred
itTopUpAmount":2000},"subscriptions":[{"id":294972,"name":"B-MICRO","price":0,"start":"2023-01-06 03:30:52"},{"id":294974,"name":"R-MICRO","price":0,"start":"2023-01-06 03:34:02"},{"id":294975,"name":"Researcher Seat","price":10,"start":"2023-01-06 
03:34:07"}],"products":[{"name":"Professional Seats","icon":"https:\/\/cdn.quantconnect.com\/i\/tu\/subscription-icon-v1.0.png","items":[{"productId":31,"name":"Researcher Seat","quantity":1,"unitPrice":10,"total":10}]},{"name":"Backtest 
Node","icon":"https:\/\/cdn.quantconnect.com\/i\/tu\/backtest-node-icon-v1.0.png","items":[{"productId":30,"name":"B-MICRO","quantity":1,"unitPrice":0,"total":0}]},{"name":"Research 
Node","icon":"https:\/\/cdn.quantconnect.com\/i\/tu\/research-node-icon-v1.0.png","items":[{"productId":29,"name":"R-MICRO","quantity":1,"unitPrice":0,"total":0}]},{"name":"Modules","icon":"https:\/\/cdn.quantconnect.com\/i\/tu\/arrow-right-circle.svg","it
ems":[{"productId":130,"name":"Kraken 
Brokerage","quantity":1,"unitPrice":0,"total":0,"license":"4c8je8s5F7IwkXK\/va7h0pNYxKOw7H5KzK2P5KYll3UbpPFwX\/yLwQozMHOraJfqJ+y6oQFNSECJbk9lsJ4KQFN4O8kgY3fAEKhxCZdJJ\/M=::3dnZnPUMMBRcHhbdT5ZMDA=="},{"productId":173,"name":"SAMCO 
Brokerage","quantity":1,"unitPrice":0,"total":0,"license":"vINbYpci\/EhqfTUXkpoHcSJNHJD2SF4GY\/VpZ2uYvV+pGCqAxacT7OK3ssCkP6EjBIbUXPqf8DmPvpxXoK7Y+GlN3Bh8s2ao0B5gYplgAks=::GMfDryExBoOD+ZKlaXoKUQ=="},{"productId":174,"name":"Zerodha 
Brokerage","quantity":1,"unitPrice":0,"total":0,"license":"YvQtEsCdVzQwz1VDYx3R7sNmicd2AlX51zzYFMgpBhOpw\/Jn9QXI9Yp4cniaReyI26pngsW+qg913MUVHNs77Sh7Ze8lQKWJ595UUw79uaI=::poJ93fF7RjP8wGZ5SbELtg=="},{"productId":176,"name":"Binance 
Brokerage","quantity":1,"unitPrice":0,"total":0,"license":"Y7cvflVyh9BszwUru3aMWJi6fy4ZT8fMClxtFJmavAVD7NrymMa1C5h7SKqXMvRRPZ78LfwrhnBjffNMZLKi8gXfIjA2OdTJxNKkxjptyQY=::0fmHvo\/+KClrOVMBtx\/t1Q=="},{"productId":181,"name":"Interactive 
Brokers","quantity":1,"unitPrice":0,"total":0,"license":"bb1jpKPuUFdsW3C1C21+jg\/p+LIUaPu7LirGjeyStj08HvBxKnlAP2qFCN3ng98kOX2oDtCzq9EA9x8y5Un\/fJaslnwQIlyx6OdsstSmJjI=::nG3hDflWusbe932RNzD6Sw=="},{"productId":182,"name":"Bitfinex","quantity":1,"unitPrice":
0,"total":0,"license":"KbxKqCRW+rkkn59N+vIdJJ9LiVkt1n+Gdvy\/W7k89FLbuz0VwsHs9Aepp22lwlx3MV5QORAZNfZYZChvZHCKVOnxHkGE0GcAhsf1viMjqr0=::fEfHRYb2aQTV\/Gs\/3DRwPA=="},{"productId":183,"name":"Coinbase 
Advanced","quantity":1,"unitPrice":0,"total":0,"license":"yzcUy65D9Ypnz9uE2goEYpicOl2Ak4zQ1AjY+S6kvV9pAjV1Pcrb4PLhwrDW5PAAjwfYuQ8KGnSOxiS56XENH++ydpmYJhQCHg\/YdxTKEJo=::RQAlIxnIiIqJ2LofpQ5riw=="},{"productId":184,"name":"OANDA","quantity":1,"unitPrice":0,"
total":0,"license":"fVk2haq\/peAwTgbq9ilBCa0oN3ipNX4GfGgXbYUaAu3YzNuXHtsM1uaImkcl06JqdfHV7h2t0iud0Z2ZVZ9qrFcllXtKfaMo7+3A5NXaes4=::PFuF5rNMp38It2CfG\/3FiA=="},{"productId":185,"name":"Tradier","quantity":1,"unitPrice":1,"total":1,"license":"lZAtqllsuj0NHfc
BL8pwx+9v87bigx\/gGASa42naHRktRrBruj7OULIAasXLH6amvEnTsVJk3GAIBpkUEV0VoYbyHAmqr7H2HceG2k4FgVo=::TKBYs5l23pSjS8ED2RGFjA=="},{"productId":226,"name":"TD 
Ameritrade","quantity":1,"unitPrice":0,"total":0,"license":"sqRVzdYqYxFfKT++JI\/prSYcl9xVlEBCAYQJ6FyLN9nrBacyp5JpaOQbtC\/psQCoeHH7xo2S6oQgMbG56nkXRx4lttaX8e+lMHWZ92UcZ2Y=::5YjEDfWFJfjjn4BfxIRDdQ=="},{"productId":227,"name":"Local Platform - VSCode 
Extension","quantity":1,"unitPrice":0,"total":0,"license":"zl46\/cvPc6npazhra2v+TO8RRIo6SskE2cyU0xLEFSSens+caDsMcOG4rkoLdRPxOGMOHx8iuRG3QqMeEk16LH4E9Kv87vXSGAtGh45ZJH4=::cYAhoCVF73DiY19ASAxHZg=="},{"productId":228,"name":"Messaging 
Handler","quantity":1,"unitPrice":0,"total":0,"license":"b29nwzUXqWV6clPZCnxKaoLBH+HOU7zd8I\/eh6RQQUVHekhlsnX3EVJqT5kfaoHVVHopOshFe4luzCqbm6SjyGLHh7U5vUqxqqyAgMdOf1s=::ujKxwpfTuRjoNHiJFlOJ6g=="},{"productId":305,"name":"Bybit","quantity":1,"unitPrice":0,"t
otal":0,"license":"jB288YXu40zdA5ilozbk7xfZVnRUEnt1wUn7xPGcRoEV9CTgF1H\/9Dw1TKysNs1VC+mwsZez0E+s+Zf8q6TD26+fiF3Nylx6PRdSvLxwR3U=::kAghuCTu2uD\/gu5TWYOhYg=="},{"productId":306,"name":"Polygon 
Data","quantity":1,"unitPrice":0,"total":0,"license":"3xxytIxZNaYRdghsaQR7AEqZ6YOD\/eFN4qa1uQeqJC0lzw9OMzrOma3q+CL4+6YudxmrpE04fbxAHwp37s0d3NzVuCqA1R42VBgTvKKFi+U=::KwZmJGOSRzaHzj4GkAE8jg=="},{"productId":308,"name":"Eze","quantity":1,"unitPrice":0,"total"
:0,"license":"yHdV6tOGjkf4ChZvzp+94TkCuBbSnWLR0EzWdDtRFunu5NU9H8ivl+aTjBxticERWzCV+tqbC1Y32HoQzOSMbwjifHLNVlsv+UiAOO5UfF4=::9tysZE+w\/PVWrFJAKRng7w=="},{"productId":313,"name":"Local Price 
Service","quantity":1,"unitPrice":0,"total":0,"license":"gfRY7iVKrsXxD\/dmm9Z+qM+SID\/eOeq9xS7tXq3Mi+o5HyaEZeKdqY5jE10RqNbnZSJfQ5dscyNwEzb5rCSHTv9Az8cjP0zyr\/J47P3C12E=::XOcByCFemXpLvkCKafMXmw=="},{"productId":332,"name":"IQFeed 
Data","quantity":1,"unitPrice":0,"total":0,"license":"Boks7+LS2KO\/PBHzhY7BG02RI28VXFwDvoYZApYqb6R8uXUlFf7NJbqJXsuBCHAKFHGJhPjzkRaVF\/6RQegUzo1jahtW\/OSnNWIucGTeg1k=::FPv2YxEHg2xC36tIIhwmtQ=="},{"productId":333,"name":"IEX 
Data","quantity":1,"unitPrice":0,"total":0,"license":"m\/RvOPjB8dxVEGFa9NHkNprAn4hKTSSDKNL2IGWE1zNk\/vqg+4dbTLgM0VjvPFxLxHvg+aWzw\/iebt\/9jy9QjxbuVVljD+mRBfzVhOb4rFs=::OFHMsGPhGRRlu8pqJoArLQ=="},{"productId":334,"name":"Alpha Vantage 
Data","quantity":1,"unitPrice":0,"total":0,"license":"U7V1Ekwo0BKbSUSa0p+RUMseztyMPc9XBRy0bJdFjFy13GedcAfUxp\/a9mv7G+v\/s9QGuMwxSNc7\/0ptK8Iu40l3Or57NZAYM92V1RR7An8=::Tj3neuzz1EVJNbEDzTpvfA=="},{"productId":335,"name":"CoinAPI 
Data","quantity":1,"unitPrice":0,"total":0,"license":"1X5u4yswMG7DmnwwwR+TVYEVVdwItODfqdFAtspl+ubwdZ7Skqi6\/F5QPsuj8XTytH1L8yFLbmmTnpqVM7S7dawHCjkfVvyONmzWGFKGyyE=::piM7rtcsIqdlLMcI+zFrQg=="},{"productId":343,"name":"FactSet 
Data","quantity":1,"unitPrice":0,"total":0,"license":"Dr4s8CTp+ih7apTx56BPl1N1z5rwW0GSd0lEb1XrSSBpDaQBz6HeQ4JsZrumQfNX2iyOPlcWIHFWU\/m3qJZWcD1cLEYBdVADONBCpDCtjMw=::LYlpoagSwae6obT25\/Lmew=="},{"productId":344,"name":"Theta 
Data","quantity":1,"unitPrice":0,"total":0,"license":"vEDi9AC7K9cK5f5L6WGJMjlspofMZw7ztxNIfFSp0r9\/G8qtL1j1LCNxx\/xaZ76Q2N5axpWSiE\/Yca\/0dj6Lhd\/soF\/5IBwGGALz5fUv\/WQ=::ZWJdC3fRuvmLany7SJYtIA=="},{"productId":346,"name":"TradeStation","quantity":1,"unitP
rice":0,"total":0,"license":"HqwbgFkuKXltzCY\/kTvOb\/vKE39mOebhozX6WXDzGQL80saqDxgjKSkS6Stq1K\/zgAt05TxFEr4d55Q0x\/GhbeK9xhdVICYpA\/nKaOyQL60=::Ad5k5Y5VgwCAOIs4EB5\/HA=="},{"productId":347,"name":"Alpaca","quantity":1,"unitPrice":0,"total":0,"license":"SJ7
2439DJZRG\/KmHyaEr1FenKZHNaqDNOI9WsWvKdmjUCXiwCfFVfFEd11tTPiFAMqu9m9Cs+PRQMZiWo\/Ql4Kb2Tvpyqa\/qvHdMFIV0NMM=::JVNak5dujkZfvoMBRWbviA=="},{"productId":367,"name":"Charles 
Schwab","quantity":1,"unitPrice":0,"total":0,"license":"PPMm1q1kod1loEygwp9VQalfKUiDvpINLyiOXwNGaKSbYY60pFmDp7gClBuGqJ3k24eAE7EeypJy73tyPU69\/p2uBwhFjImc4mKvj6ptxHI=::xVkkElJ0po233+lPNTQdpQ=="}]}],"invoices":[{"id":"z54eJAiCVC","time":"2025-02-06 
03:34:30","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5cPghNEyk","time":"2025-01-06 03:34:08","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5VM36giCS","time":"2024-12-06 
03:34:23","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z59GwBVXGJ","time":"2024-11-06 03:34:23","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5ePfMFX7G","time":"2024-10-06 
03:34:49","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5qSoiY40y","time":"2024-09-06 03:35:13","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5GvUAAQtr","time":"2024-08-06 
03:34:11","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z50RQMRnID","time":"2024-07-06 03:34:36","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5tVkyLeQw","time":"2024-06-06 
03:34:23","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5VHlebgO3","time":"2024-05-06 03:34:35","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5CgktMku5","time":"2024-04-06 
03:34:53","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z568g6OFpf","time":"2024-03-06 03:34:18","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5mfwrPfH6","time":"2024-02-06 
03:34:33","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5nFCbTaGY","time":"2024-01-06 03:34:52","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5mjiXGODL","time":"2023-12-06 
03:37:29","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5AtNEn9TI","time":"2023-11-06 03:34:52","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z56oTCk9ve","time":"2023-10-06 
03:35:23","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5Q3cteUSX","time":"2023-09-06 03:35:34","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5OeOZfmTF","time":"2023-08-06 
03:38:48","status":"Paid","amount":10,"discount":0,"total":10,"url":null},{"id":"z5DuXvWqTE","time":"2023-07-06 
03:36:52","status":"Paid","amount":10,"discount":0,"total":10,"url":null}],"invoicesCount":26,"about":"","name":"kubid","supportSeats":{"bronze":{"seats":0,"unassigned":0},"silver":{"seats":0,"unassigned":0},"gold":{"seats":0,"unassigned":0}},"shortDescrip
tion":"Write a short 
description","statistics":[{"name":"ComputeHours","value":"-"},{"name":"Lines","value":"25,291"},{"name":"Projects","value":"16"},{"name":"Backtests","value":"1,481"},{"name":"Members","value":"1"}],"profileImage":"https:\/\/cdn.quantconnect.com\/i\/tu\/or
ganization-default-icon.png","useResourcesListView":false,"useMembersListView":false,"isUsingPaidFeatures":true,"isAbleToDowngrade":true,"nodes":{"backtest":[{"speed":3,"price":{"monthly":0,"yearly":0},"cpu":1,"ram":7.7999999999999998,"name":"Community 
B-MICRO","sku":"B-MICRO","description":"1 CPU @ 3.0GHz, 7.8GB 
Ram","usedBy":"-","userProfile":"","projectName":"","projectId":null,"busy":false,"id":"BN-a4663462074c4761587d9bbb7f44d104","assets":100,"host":null,"hasGpu":0}],"research":[{"speed":2.3999999999999999,"price":{"monthly":0,"yearly":0},"cpu":1,"ram":2,"nam
e":"Community R-MICRO","sku":"R-MICRO","description":"1 CPU @ 2.4GHz, 2GB 
Ram","usedBy":"-","userProfile":"","projectName":"","projectId":null,"busy":false,"id":"RN-228d38124912efcea95279e2198c950b","assets":100,"host":null,"hasGpu":0}],"live":[]},"environment":{"files":279,"bytes":43978752,"size":"41.94 
MB"},"data":{"signedTime":null,"current":false},"objectStore":[{"id":24,"name":"S-MICRO","price":0,"bytes":52428800,"files":1000,"storage":"50 MB","active":true},{"id":25,"name":"S-10","price":12,"bytes":2147483648,"files":20000,"storage":"2 
GB","active":false},{"id":26,"name":"S-20","price":24,"bytes":5368709120,"files":50000,"storage":"5 GB","active":false},{"id":27,"name":"S-50","price":60,"bytes":10737418240,"files":100000,"storage":"10 
GB","active":false},{"id":28,"name":"S-100","price":120,"bytes":53687091200,"files":500000,"storage":"50 GB","active":false}],"objectStoreExportDerivative":false,"objectStoreHighestConsumers":[],"objectStorageUsed":43978752,"objectStorageUsedHuman":"41.94 
MB","members":[{"id":217296,"name":"kubid","isAdmin":true,"isRequester":true,"profile":"https:\/\/cdn.quantconnect.com\/web\/i\/users\/thumbnail\/100\/default.jpg","editable":false,"support":null,"linkedin":null,"lastLoginTimestamp":"2025-02-24 
14:15:19","email":"cloud@kubid-research.com","profileUrl":"\/u\/kubid","publicId":"kubid","online":true,"permissions":{"updateBilling":{"name":"Update Billing","value":true},"researchNodeStop":{"name":"Stop Research 
Nodes","value":true},"researchNodeCreate":{"name":"Create Research Nodes","value":true},"researchNodeDelete":{"name":"Delete Research Nodes","value":true},"liveNodeStop":{"name":"Stop Live Nodes","value":true},"liveNodeCreate":{"name":"Create Live 
Nodes","value":true},"liveNodeDelete":{"name":"Delete Live Nodes","value":true},"backtestNodeStop":{"name":"Stop Backtest Nodes","value":true},"backtestNodeCreate":{"name":"Create Backtest Nodes","value":true},"backtestNodeDelete":{"name":"Delete Backtest 
Nodes","value":true},"teamAdd":{"name":"Add Team Members to The Organization","value":true},"teamEdit":{"name":"Edit Team Members Permissions","value":false},"teamRemove":{"name":"Remove Team Members","value":true},"storageBilling":{"name":"Manage Storage 
Billing","value":true},"storageCreate":{"name":"Create Storage Files","value":true},"storageDelete":{"name":"Delete Storage 
Files","value":true}}}],"alpha":null,"courses":{"coursesCont":4,"enrolledMembers":0,"completedTasks":0,"courses":[{"id":1,"name":"Boot Camp 101 \/ US 
Equities","authorName":"QuantConnect","thumbnail":"https:\/\/cdn.quantconnect.com\/i\/tu\/bootcamp-101-thumbnail-image3.jpg","shortDescription":"Learn algorithmic trading with python for US Equities. Guided strategy development in easily digestible 
portions.","members":[]},{"id":2,"name":"Boot Camp 102 \/ FOREX","authorName":"QuantConnect","thumbnail":"https:\/\/cdn.quantconnect.com\/i\/tu\/bootcamp-102-thumbnail-image3.jpg","shortDescription":"Learn algorithmic trading with python for FX. Guided 
strategy development in easily digestible portions.","members":[]},{"id":3,"name":"Boot Camp 103 \/ Futures","authorName":"QuantConnect","thumbnail":"https:\/\/cdn.quantconnect.com\/i\/tu\/bootcamp-103-thumbnail-image3.jpg","shortDescription":"Learn 
algorithmic trading with python for Futures. Guided strategy development in easily digestible portions.","members":[]},{"id":5,"name":"Algorithmic Trading A-Z | The Complete 
Course","authorName":"Louis","thumbnail":"https:\/\/cdn.quantconnect.com\/i\/tu\/python-for-algorithmic-trading-thumbnail-image.jpg","shortDescription":"In this algorithmic trading tutorial series you will learn everything you need to know to start writing
your own trading bots using Python and the QuantConnect quantitative trading 
platform.","members":[]}]},"channel":"ORGaaf8e7f6b1-81ad0f0546a5a4cdfaa1edb070376008","minimumTransactionSizeLimit":0,"billingFrequency":"monthly","billingStatus":"paid","billingPausedUntil":null,"hasCardOnFile":true,"joinOrganizationLink":"https:\/\/www.q
uantconnect.com\/invite?t=organization&o=81ad0f0546a5a4cdfaa1edb070376008&k=465ef3e437debd30da49cdc6c2690c930241d8ab","outOfSampleDays":0,"trial":null,"contracts":{"institution":null}},"success":true}
logged in as **** (****@******.com)
Adding package yfinance to project /home/ecs-user/qc/ea
Retrieving latest compatible version from PyPI
Traceback (most recent call last):
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/connectionpool.py", line 493, in _make_request
    conn.request(
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/connection.py", line 445, in request
    self.endheaders()
  File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output
    self.send(msg)
  File "/usr/lib/python3.12/http/client.py", line 1035, in send
    self.connect()
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/transport/unixconn.py", line 26, in connect
    sock.connect(self.unix_socket)
PermissionError: [Errno 13] Permission denied

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/requests/adapters.py", line 667, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/connectionpool.py", line 841, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/util/retry.py", line 474, in increment
    raise reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/util/util.py", line 38, in reraise
    raise value.with_traceback(tb)
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/connectionpool.py", line 493, in _make_request
    conn.request(
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/urllib3/connection.py", line 445, in request
    self.endheaders()
  File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output
    self.send(msg)
  File "/usr/lib/python3.12/http/client.py", line 1035, in send
    self.connect()
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/transport/unixconn.py", line 26, in connect
    sock.connect(self.unix_socket)
urllib3.exceptions.ProtocolError: ('Connection aborted.', PermissionError(13, 'Permission denied'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/api/client.py", line 223, in _retrieve_server_version
    return self.version(api_version=False)["ApiVersion"]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/api/daemon.py", line 181, in version
    return self._result(self._get(url), json=True)
                        ^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/utils/decorators.py", line 44, in inner
    return f(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/api/client.py", line 246, in _get
    return self.get(url, **self._set_request_timeout(kwargs))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/requests/sessions.py", line 602, in get
    return self.request("GET", url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/requests/adapters.py", line 682, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', PermissionError(13, 'Permission denied'))

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/components/docker/docker_manager.py", line 573, in _get_docker_client
    docker_client = from_env()
                    ^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/client.py", line 94, in from_env
    return cls(
           ^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/client.py", line 45, in __init__
    self.api = APIClient(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/api/client.py", line 207, in __init__
    self._version = self._retrieve_server_version()
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/docker/api/client.py", line 230, in _retrieve_server_version
    raise DockerException(
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', PermissionError(13, 'Permission denied'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/main.py", line 94, in main
    lean.main(standalone_mode=False)
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/click/core.py", line 1082, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/click/core.py", line 1697, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/click/core.py", line 1697, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/click.py", line 252, in invoke
    result = super().invoke(ctx)
             ^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/click/core.py", line 1443, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/click/core.py", line 788, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/commands/library/add.py", line 332, in add
    _add_pypi_package_to_python_project(project, name, version, no_local)
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/commands/library/add.py", line 242, in _add_pypi_package_to_python_project
    python_version = container.docker_manager.get_image_label(engine_image, 'strict_python_version',
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/components/docker/docker_manager.py", line 46, in get_image_label
    for name, value in self.get_image_labels(str(image)):
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/components/docker/docker_manager.py", line 42, in get_image_labels
    docker_image = self._get_docker_client().images.get(image)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ecs-user/qc/venv/lib/python3.12/site-packages/lean/components/docker/docker_manager.py", line 575, in _get_docker_client
    raise error
lean.models.errors.MoreInfoError: Please make sure Docker is installed and running