当前位置:   article > 正文

Mac OS 如何在命令行下启动Docker

Mac OS 如何在命令行下启动Docker

现象

当用 Mac air作为服务器时,远程登录上去后想使用 docker,却报如下错:

Cannot connect to the Docker daemon at unix:///Users/aborn/.docker/run/docker.sock. Is the docker daemon running?

原因分析

因为 docker 有一个守护进程,如果这个守护进程没有起来,就无法使用 docker 命令对容器进行管理。如下图:

对于 linux 系统这个守护进程是 dockerd ,但对于 mac 系统,需要启动 Docker Desktop 图形界面才能启动守护进程,它却无法在远程终端中打开。

问题解决

看来 docker 无法解决这个问题,对该提问网友给出了两个解决方案:

  1. podman
  2. rancher

通过了解 podman 我们发现其是最理想的解决思路,因为podman 和 docker的命令基本一致。同时,podman 不需要守护进程,区别如下图:

podman替代 docker

  • 安装 podman
    可以通过 brew 进行安装,安装教程参考
    brew install podman
  • 将 docker 命令切换为 podman (编辑~/.bash_profile文件,增加以下行)
    alias docker=podman
  • 初始化启动,执行以下两个命令
  1. podman machine init
  2. podman machine start
  • 重新制作镜像和容器,最后再启动容器。这两步操作和原先的 docker 一样。
  • 服务器重启后,可以重新启动podman ( podman machine start) 。之后,就可以启动已有容器。 (podman ps -a 查看所有容器)
docker start [容器 ID]

最后执行 podman container ls 不再报错。

执行 docker images 不再报错。

  1. $ docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. quay.io/centos/centos latest a0477e85b8ae 3 years ago 256 MB

 

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号