boxmoe_header_banner_img

(●'◡'●)

加载中

cloud computing

docker内写入source.list。让容器内部具备命令。

docker内写入source.list。让容器内部具备命令。
Contents

由于容器里面就一个mysql镜像,没有其他命令。我们先要再宿主机编辑一个list文件传到容器里
或者在宿主机编辑my.cnf直接cp到容器里也是可以的。

vim sources.list

把以下源放入到文件内,也可以放其他的源

deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse

保存退出,再传到容器里,两个容器都要

传送前,检查容器里/etc目录下是否有apt目录。没有则创建,两个容器都要

[root@wang ~]# docker exec -it mysql-master /bin/bash
bash-4.2# mkdir /etc/apt
bash-4.2# exit

[root@wang ~]# docker exec -it mysql-slave /bin/bash
bash-4.2# mkdir /etc/apt
bash-4.2# exit

docker cp sources.list mysql-master:/etc/apt/sources.list
docker cp sources.list mysql-slave:/etc/apt/sources.list

检查基础镜像
首先,确认目标容器的基础镜像类型:

cat /etc/os-release
如果显示是 Alpine Linux,那么需要使用 apk 来管理软件包。
如果是其他发行版(比如 Debian 或 CentOS),则可能需要安装缺少的包管理工具。

  1. 如果是 Alpine Linux
    Alpine 使用 apk 作为包管理工具。可以使用以下命令更新软件包索引并安装工具:

apk update
apk add apt bash coreutils
然后再尝试运行 apt 或其他命令。

  1. 如果是 Debian 或 Ubuntu
    可能基础镜像是极简的,不包含 apt。可以手动安装:

apt-get update
apt-get install -y apt-utils

  1. 如果是 CentOS
    如果确认是 CentOS 或基于 CentOS 的镜像但缺少 yum:

microdnf update
microdnf install yum

  1. 使用包管理器
    修复后,再次尝试更新包或安装所需软件。例如:

apt update
apt install -y vim
或者:
yum update
yum install -y vim

  1. 建议切换基础镜像
    如果你的需求需要完整的包管理支持,考虑更换为常规的 Ubuntu 或 CentOS 基础镜像。例如:

Ubuntu: FROM ubuntu:20.04
CentOS: FROM centos:8



评论(0)

查看评论列表

暂无评论


发表评论

表情 颜文字
插入代码