四时宝库

程序员的知识宝库

LazyDocker:节省时间的 Docker 管理、用户友好型工具

介绍:

LazyDocker 是一款用户友好的 CLI 工具,能让你轻松管理 Docker。有了 LazyDocker,你只需一条命令就能执行启动、停止、重启和删除容器等常见的 Docker 任务。LazyDocker 还能轻松查看日志、剪切未使用的容器和镜像,以及自定义指标。

对于想要使用 Docker 而无需学习所有复杂命令的人来说,LazyDocker 是一款完美的工具。对于想要省时省力的资深 Docker 用户来说,它也是一款出色的工具。

在本文中,你将了解到它的功能、在 Linux 上的安装过程以及适合初学者的使用说明。

Docker 是个黑盒子,我不知道里面到底发生了什么。

您无法对 Docker 中运行的应用程序进行故障排除。

我只想在我的主机服务器上运行应用程序,为什么他们不告诉我怎么做?

轻松管理 Docker 应用程序

LazyDocker 是一款出色的命令行工具,用于管理 Docker 应用程序和服务。它是一款跨平台工具,具有用户友好的 CLI 界面,因此可以在 Windows、macOS 和 Linux 系统上使用。你甚至可以使用鼠标或键盘快捷键进行导航和操作。

为什么使用 LazyDocker?

虽然 Docker 是开发和运行应用程序的强大工具,但使用起来可能很复杂,尤其是在生产环境中。即使你不是 Docker 专家,LazyDocker 也能让你轻松管理 Docker 应用程序和服务。

Lazy Docker 是一款极简的 CLI 工具(不同于先进的 Portainer Web UI),对于主要关注容器、镜像、卷和网络监控的 Docker 用户来说非常有益。

与标准命令行界面(CLI)相比,它提供了一种交互性更强、更友好的 Docker 交互方式。

Lazy Docker 通过可视化界面简化了 Docker 容器管理,但不能替代标准 Docker CLI 或 Portainer 等高级前端。

LazyDocker 的功能和限制

如果您的主要需求符合以下条件,Lazy Docker 将成为您首选的 Docker 管理工具:

  1. 快速查看运行/停止的容器、镜像、卷和网络列表。
  2. 通过实时监控,即时跟踪容器的资源利用率(CPU、内存)并查看实时日志。
  3. 使用 Lazy Docker 的用户友好界面,轻松管理容器的启动、停止、重启和移除。
  4. 支持 Docker Compose,可轻松管理 Compose 文件中定义的多容器应用程序。
  5. 直接从 LazyDocker 界面在运行中的容器内启动终端会话。
  6. 为 Docker 命令提供省时的键盘快捷方式,提高高级用户的效率。直接从 LazyDocker 界面在运行中的容器内启动终端会话。

尽管 LazyDocker 拥有许多功能,但它也有局限性,可能无法胜任所有 Docker 管理任务。以下是一些它无法完成或可能表现不佳的任务:

  1. 它缺乏对使用 Docker Swarm 或 Kubernetes 协调容器的强大支持。
  2. 高级网络设置(如带有复杂路由的自定义桥接网络)可能需要使用标准的 Docker CLI,因为它们无法在此配置。
  3. 它不是用来从 Dockerfile 或其他来源创建 Docker 映像的。
  4. 它不提供管理运行容器中的用户账户和权限的大量工具。
  5. 如果您依赖 Docker 插件来实现额外的功能,如存储或网络驱动程序,那么管理这些插件通常需要使用标准的 Docker CLI。
  6. 它最适合单主机 Docker 设置;对于分布式或多主机 Docker 环境(如 Docker Swarm 或 Kubernetes 集群),则需要不同的工具和配置。如果您依赖 Docker 插件来实现额外的功能,如存储或网络驱动程序,那么管理这些插件通常需要使用标准的 Docker CLI。

尽管存在这些限制,但如果您的需求与这些功能相符,就可以一试。

安装和实际操作:

Lazy Docker 不在 Linux 代码库中,但为 Linux、macOS 甚至 Windows 提供了直接的安装选项。

首先,选择一种首选方法将其安装到你的 Linux 系统上。

通常,lazydocker 公式可以在 Homebrew 核心中找到,但我们建议你使用我们的公式,以获得经常更新的公式。它也适用于 Linux。

轻敲

brew install jesseduffield/lazydocker/lazydocker

核心:

brew install lazydocker

scoop(视窗):

您可以使用 scoop 安装 lazydocker:

scoop install lazydocker

Chocolatey (Windows):

你可以使用 Chocolatey 安装 lazydocker:

choco install lazydocker

二进制版本(Linux/OSX/Windows):

您可以从发布页面手动下载二进制版本。

自动安装/更新时,不要忘了随时验证输入 bash 的内容:

curl https://raw.githubusercontent.com/jesseduffield/lazydocker/master/scripts/install_update_linux.sh | bash

脚本默认将下载的二进制文件安装到 $HOME/.local/bin 目录,但可以通过设置 DIR 环境变量进行更改。

去吧

所需 Go 版本 >= 1.16

go install github.com/jesseduffield/lazydocker@latest

所需 Go 版本 >= 1.8,<= 1.17

go get github.com/jesseduffield/lazydocker

Arch Linux AUR:

您可以通过运行 AUR 安装 lazydocker:

yay -S lazydocker

Docker:

  1. 如果您有 ARM 设备,请单击
  2. 运行容器
docker run - rm -it -v \ /var/run/docker.sock:/var/run/docker.sock \ -v /yourpath:/.config/jesseduffield/lazydocker \ lazyteam/lazydocker
  1. 别忘了将 /yourpath 改为你为存储 lazydocker 配置而创建的实际路径
  2. 也可以使用下面的 docker-compose.yml
  3. 例如,您可能需要创建一个别名:也可以使用下面的 docker-compose.yml
echo "alias lzd='docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock -v /yourpath/config:/.config/jesseduffield/lazydocker lazyteam/lazydocker'" >> ~/.zshrc

在开发过程中,您可以使用

git clone https://github.com/jesseduffield/lazydocker.git
cd lazydocker
docker build -t lazyteam/lazydocker \
    --build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
        --build-arg VCS_REF=`git rev-parse --short HEAD` \
            --build-arg VERSION=`git describe --abbrev=0 --tag` \
                .
            

如果遇到与 Docker 捆绑的二进制文件不兼容的问题,可以尝试使用构建参数 --build-arg DOCKER_VERSION="v$(docker -v | cut -d" " -f3 | rev | cut -c 2- | rev)" 来重建镜像,这样捆绑的 docker 二进制文件就会与主机的 docker 二进制版本相匹配。

使用方法

在终端中调用 lazydocker。我个人经常使用它,所以我给它做了一个别名,就像这样:

echo "alias lzd='lazydocker'" >> ~/.zshrc

成功安装 Lazy Docker 后,使用此命令启动它:

$ lazydocker
#OR
$ lzd #If alias is created

输出:

启动 Lazy Docker 后,你会看到上图所示的界面。

让我们先来了解一下这个界面的各个部分:

  1. Project: 将是您 Linux 系统的主机名(相当于 hostname)。
  2. 容器:将列出容器名称、运行或退出状态、资源利用率和转发端口(相当于 docker ps -a)。
  3. 日志:显示所选容器的日志(相当于 docker 日志 {container_name})。
  4. Stats:以 ascii 图形显示容器资源使用统计的实时流(相当于 docker stats {container_name})。
  5. Env:显示所选容器的环境变量(相当于 docker inspect {container_name} --format "{{.Config.Env}})。
  6. Config:显示简洁的容器信息,可选择查看全部详细信息(相当于 "docker inspect {container_name}")。
  7. 顶部:显示容器内正在运行的进程(相当于 docker top {container_name})。
  8. 图像:显示系统中已保存的 Docker 图像(相当于 docker 图像)。
  9. 卷:显示容器创建的卷(相当于 "docker volume ls")。
  10. 网络:显示所有可用的 Docker 网络(相当于 docker network ls)。
  11. 帮助部分:显示滚动、退出、菜单导航等键盘快捷键。网络:显示所有可用的 Docker 网络(相当于 docker network ls)。

摘要:

LazyDocker 是一款功能强大、用户友好的命令行工具,用于管理 Docker 应用程序和服务。对于想让 Docker 更好用的人来说,无论你是初学者还是专家,它都是一个很棒的工具。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接