一次docker-compose升級問題排查-創(chuàng)新互聯(lián)

系統(tǒng)和docker信息

  • (1)執(zhí)行cat /etc/redhat-release:

CentOS Linux release 7.5.1804 (Core)

成都創(chuàng)新互聯(lián)公司長期為上1000+客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為巴馬企業(yè)提供專業(yè)的做網(wǎng)站、成都網(wǎng)站建設,巴馬網(wǎng)站改版等技術服務。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
  • (2)執(zhí)行docker --version:

Docker version 17.09.0-ce, build afdb6d4

  • (3)執(zhí)行docker-compose version:
docker-compose version 1.23.2, build 1110ad0
docker-py version: 3.7.0
CPython version: 2.7.5
OpenSSL version: OpenSSL 1.0.2k-fips  26 Jan 2017

事件原因

最近由于開發(fā)同學項目需求,需要將docker-compose版本從1.12.x升級至1.21.x(21版本以上,目前是1.23.2)~

操作過程

  • (1)升級pip并安裝docker-compose:
pip install --upgrade pip

pip install docker-compose==1.23.2

出現(xiàn)如下報錯:

Cannot uninstall 'texttable'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

解決方法:

進入/usr/lib/python(你的版本號)/site-packages/目錄,直接刪包目錄:

rm -rf texttable-*.egg-info

  • (2)再次pip安裝docker-compose

pip install docker-compose==1.23.2

此時,我們使用docker-compose version命令是正常的,但是當我們進入docker-compose.yml文件路徑,執(zhí)行docker-compose up -ddocker-compose ps時,出現(xiàn)如下報錯:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 10, in <module>
    sys.exit(main())
  File "/usr/lib/python2.7/site-packages/compose/cli/main.py", line 71, in main
    command()
  File "/usr/lib/python2.7/site-packages/compose/cli/main.py", line 124, in perform_command
    project = project_from_options('.', options)

或者是這樣的報錯:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 6, in <module>
    from compose.cli.main import main
  File "/usr/lib/python2.7/site-packages/compose/cli/main.py", line 22, in <module>
    from ..bundle import get_image_digests
  File "/usr/lib/python2.7/site-packages/compose/bundle.py", line 13, in <module>
    from .network import get_network_defs_for_service
  File "/usr/lib/python2.7/site-packages/compose/network.py", line 9, in <module>
    from docker.types import IPAMConfig
ImportError: cannot import name IPAMConfig

亦或者是這樣的報錯:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 7, in <module>
    from compose.cli.main import main
  File "/usr/lib/python2.7/site-packages/compose/cli/main.py", line 17, in <module>
    import docker
ImportError: No module named docker

最終的結果都是一樣的,就是docker-compose無法使用~~

這里提供一個處理上面問題的方法

為了不碰到上面棘手的報錯,正確升級姿勢總結如下:

主要步驟如下:

  • (1)使用pip list|grep docker查看已安裝相關docker包信息

  • (2)手動卸載第一步列出來的包,如下:

    <1> pip uninstall docker

    <2> pip uninstall docker-compose

    <3> pip uninstall docker-py

    <4> pip uninstall docker-pycreds

    <5> pip uninstall dockerpty

  • (3)安裝docker-compose:pip install docker-compose==1.23.2 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com#<== 這里使用豆瓣的源,比較快~

  • (4)如果第三步報錯Cannot uninstall 'texttable',請執(zhí)行上面提到的解決方法~,然后再次安裝docker-compose即可。

參考文檔

  • 刪除distutils installed的內容

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

當前題目:一次docker-compose升級問題排查-創(chuàng)新互聯(lián)
文章分享:http://muchs.cn/article2/dcojoc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號App開發(fā)、全網(wǎng)營銷推廣標簽優(yōu)化、外貿網(wǎng)站建設、網(wǎng)站設計

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設