文章目录
一、CentOS7配置阿里yum源
替换 CentOS 镜像源
CentOS 7 官方镜像源在国内可能有访问问题,可以换阿里云或清华镜像。
备份旧 repo 文件:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
下载国内镜像 repo,例如阿里云:
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
清理缓存并更新:
yum clean all
yum makecache
yum update -y
安装常用工具
yum install -y vim wget curl net-tools sudo
查看系统信息
cat /etc/redhat-release # 查看 CentOS 版本
hostname # 查看主机名
ifconfig #查看 IP
二、配置ssh
安装 SSH
yum install -y openssh-server passwd
创建必要目录
mkdir /var/run/sshd
设置 root 密码(示例:123456)
echo 'root:123456' | chpasswd
修改配置允许 root 登录和密码认证
sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/' /etc/ssh/sshd_config
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
生成host keys:
ssh-keygen -A
启动 ssh 服务
/usr/sbin/sshd
容器内排查问题命令
ps aux | grep sshd
netstat -tlnp | grep 22
本机连接 docker 实例 mycentos7
ssh root@localhost -p 2222
-
容器实例重启后如果不通,也可能是没有自动开启 ssh 服务,需要进入容器内启动
/usr/sbin/sshd
三、制作我的镜像
1.查看当前容器
docker ps -a
示例输出:
CONTAINER ID IMAGE NAMES
b0840e5936fa centos:7 centos7
你需要记录 容器名称或 ID,比如这里是 centos7。
2.提交容器为镜像
docker commit centos7 my-centos:1.0
解释:
centos7 → 容器名或 ID
my-centos:1.0 → 新镜像名称和标签(可以自己定义)
执行后,你就生成了一个新的镜像。
3. 查看镜像
docker images
输出示例:
REPOSITORY TAG IMAGE ID SIZE
my-centos 1.0 abc123def456 500MB
centos 7 fc45edbaf51c 200MB
现在你可以用新镜像创建容器了:
docker run -it --name test-centos my-centos:1.0 /bin/bash
我本机打的镜像:
docker run -dit --name mycentos7 -p2222:22 mycentos7:1.1-ssh /bin/bash
4. (可选)上传到 Docker 仓库
如果你想在其他电脑上也用:
登录 Docker Hub:
docker login
给镜像打标签:
docker tag my-centos:1.0 <你的dockerhub用户名>/my-centos:1.0
推送到 Docker Hub:
docker push <你的dockerhub用户名>/my-centos:1.0
上传前要确保网络通畅或使用国内镜像仓库,例如阿里云 Docker Registry
docker commit mycentos7_ssh mycentos7_ssh:1.0
docker run -dit --name mycentos7 -p2222:22 mycentos7:1.0-nettools /bin/bash