写在前面:
通过Docker构建Centos学习环境,过程中遇到的一些问题记录。
在Docker中运行Centos7仅需从DockerHub拉取对应镜像
docker pull centos:7
镜像下载好后,为了让Centos更像在虚拟机里运行,则需要增加特权模式,让其可以后台运行。
docker run -d --name c1 --privileged=true cetnos:7 /usr/sbin/init
按照交互方式启动运行的Centos7
镜像会在后台挂在一个bash
进行,从而可以使用docker ps
查看正在后台运行的容器。
[root@localhost ~] CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5bfc1808add1 centos:7 "/bin/bash" 40 minutes ago Up 15 minutes c1
因为官方提供的Centos7
镜像是最小化的,因此很多系统参数未配置,工具包也未安装。在网络参数未配置的情况下,容器是无法进行IP数据包转发,从而连接到互联网的,因此,接下里开始配合容器的路由转发参数,并安装常用的工具。
配置路由转发参数,首先需要检查是否存在/etc/sysctl.conf
文件,如果不存在就在创建一个,如果存在,则检查net.ipv4.ip_forward
项
vi /etc/sysctl.conf net.ipv4.ip_forward = 1 sysctl -p docker restart c1 ping [任意可用网址]
确认容器网路可用之后,就可以开始安装的工具。
yum install -y iproute vim openssh openssh-clients.aarch64 openssh-server.aarch64 epel-release systemd NetworkManager
安装完成后,配置openssh能够每次启动容器自动加载。
systemctl daemon-reload systemctl start sshd systemctl enable sshd
补充:
yum 搜索工具所在的工具包,下面以搜索traceroute
工具所在包为例。
[root@localhost ~] Loaded plugins: fastestmirror, ovl Loading mirror speeds from cached hostfile * base: mirror-hk.koddos.net * extras: mirror-hk.koddos.net * updates: mirror-hk.koddos.net 3:traceroute-2.0.22-2.el7.aarch64 : Traces the route taken by packets over an IPv4/IPv6 network Repo : bas [root@localhost ~] Loaded plugins: fastestmirror, ovl Loading mirror speeds from cached hostfile * base: mirror-hk.koddos.net * epel: my.mirrors.thegigabit.com * extras: mirror-hk.koddos.net * updates: mirror-hk.koddos.net =============================================== N/S matched: epel =============================================== epel-release.noarch : Extra Packages for Enterprise Linux repository configuration epel-rpm-macros.noarch : Extra Packages for Enterprise Linux RPM macros Name and summary matches only, use "search all" for everything.
原文链接:https://blog.csdn.net/weixin_42404727/article/details/118179937
© 版权声明
声明📢本站内容均来自互联网,归原创作者所有,如有侵权必删除。
本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。
THE END