You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Linux 8.6容器无法使用dnf/yum/apt-get,如何安装Vim?

在MySQL容器中安装Vim的解决方案

问题原因

你的MySQL容器默认以mysql用户运行,无root权限,因此无法执行dnf/yum等包管理命令;同时Oracle Linux 8默认使用dnf作为包管理器,而非apt-get。

方法一:临时安装(容器运行时)

  1. 以root身份进入容器:
docker exec -it --user root mysql /bin/bash
  1. 若安装时提示找不到包,先更新包缓存:
dnf makecache
  1. 安装Vim:
dnf install -y vim

该方式仅在当前容器生命周期内有效,容器重建后需重新安装。

方法二:永久安装(构建自定义镜像)

如果需要每次启动容器都自带Vim,可通过构建自定义镜像实现:

  1. 在docker-compose.yml所在目录创建Dockerfile:
FROM mysql:latest
USER root
# 安装Vim
RUN dnf install -y vim
# 切换回默认的mysql用户
USER mysql
  1. 修改docker-compose.yml中的image字段为build: .,修改后的配置如下:
version: "3"
services:
  mysql:
    build: .
    container_name: mysql
    ports:
      - "3306:3306"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: ""
      TZ: "Asia/Seoul"
    command:
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_unicode_ci
    volumes:
      - /home/ubuntu/docker/data/mysql:/var/lib/mysql
  1. 重新构建并启动容器:
docker-compose up -d --build

内容的提问来源于stack exchange,提问作者geniemo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 17:45:42