python-3.x - 无法在 Ubuntu 18.04 上安装 Docker?

标签 python-3.x docker ubuntu

我正在尝试在我的 Ubuntu 18.04.4 LTS(GNU/Linux 5.3.0-40-generic x86_64)上安装 Docker

按照说明,我正在执行以下操作并出现错误,请告知如何解决:

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

Traceback (most recent call last):
  File "/usr/bin/add-apt-repository", line 11, in <module>
    from softwareproperties.SoftwareProperties import SoftwareProperties, shortcut_handler
  File "/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py", line 67, in <module>
    from gi.repository import Gio
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 42, in <module>
    from . import _gi
ImportError: cannot import name '_gi' from 'gi' (/usr/lib/python3/dist-packages/gi/__init__.py)

最佳答案

尝试在我的 Ubuntu 18.04.4 EC2 上安装 docker 时,我在尝试 Docker Install Guide 时遇到了以下错误
第四步:

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

我有如下错误:
Traceback (most recent call last):
  File "/usr/bin/update-manager", line 28, in <module>
    from gi.repository import Gtk
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 27, in <module> from ._gi import _API
ImportError: No module named 'gi._gi'
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 64, in apport_excepthook
    from apport.fileutils import likely_packaged, get_recent_crashes
  File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
    from apport.report import Report
  File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
import apport.fileutils
  File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
    from apport.packaging_impl import impl as packaging
  File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 20, in <module>
import apt
File "/usr/lib/python3/dist-packages/apt/__init__.py", line 21, in <module>
import apt_pkg
ImportError: No module named 'apt_pkg'

Original exception was:
Traceback (most recent call last):
File "/usr/bin/update-manager", line 28, in <module>
from gi.repository import Gtk
File "/usr/lib/python3/dist-packages/gi/__init__.py", line 27, in <module>
from ._gi import _API
ImportError: No module named 'gi._gi'

我已经使用以下副本 .io 文件解决了这个问题:

对于 apt_pkg:
cd /usr/lib/python3/dist-packages
sudo cp apt_pkg.cpython-36m-x86_64-linux-gnu.so apt_pkg.so
Basically, if you get a No such file or directory just ls to try to get the right name.

对于 gi:
sudo cp _gi.cpython-36m-x86_64-linux-gnu.so _gi.cpython-37m-x86_64-linux-gnu.so

sudo cp _gi_cairo.cpython-36m-x86_64-linux-gnu.so _gi_cairo.cpython-37m-x86_64-linux-gnu.so

一切都开始起作用了。

关于python-3.x - 无法在 Ubuntu 18.04 上安装 Docker?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60315745/

相关文章:

用于学习 Django 的 Python 2.7 或 3.3

python - 是否可以在 Dataframe 中使用 Pandas Overlap?

ubuntu - 控制台上的 Cron 作业输出

python - Pandas 替换 DataFrame 中的第一个结果

python - 如果存在则写入文件,如果不存在则创建文件

ruby-on-rails - 如何将Docker容器作为守护程序运行,以启动内置在其中的rails项目?

ruby - Docker for mac - 无法从容器内部连接到主机上运行的 mongo 副本集

mongodb - 在具有只读FS的Docker中运行Mongodb

php - 将旧的 php 和 mysql 版本网站上传到具有新 php 和 mysql 版本的服务器

java - Tomcat7 在 Ubuntu 14.04 x64 [Digitalocean] 上启动太晚