如何在 Docker 容器中安装“less”命令?

san*_*der 1 mysql less pager docker

我正在使用 mariadb 容器:

image: mariadb:10.5.8
Run Code Online (Sandbox Code Playgroud)

在容器和会话中,mysql我尝试设置:

pager less -SFX
Run Code Online (Sandbox Code Playgroud)

当我跑步时:

select * from sometable;
Run Code Online (Sandbox Code Playgroud)

我明白了

sh: 1: less: not found
Run Code Online (Sandbox Code Playgroud)

我想设置的原因pager less -SFX是为了使终端输出表的格式正确。如何安装less到这个容器中?

acr*_*ran 6

如果您只需要在交互式会话中,您可以在输入之前less简单地安装它:aptmysql

apt update && apt install less
Run Code Online (Sandbox Code Playgroud)

如果您希望less始终安装并可用,您需要根据mariadb添加的映​​像创建一个新的 docker 映像less

# images/Dockerfile
FROM mariadb:10.5.8

RUN apt update && apt install -y less
Run Code Online (Sandbox Code Playgroud)

并使用它替换image你的财产docker-compose.yml

    build: ./images/
Run Code Online (Sandbox Code Playgroud)