「Linux」Docker中运行Centos7镜像并配置网络连接

15 篇文章 0 订阅

写在前面:
通过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 ~]# docker ps
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

## 假设 sysctl.conf 文件不存在
vi /etc/sysctl.conf
## 在 sysctl.conf 中增加 net.ipv4.ip_forward = 1 , 表示允许进行路由转发
net.ipv4.ip_forward = 1
## 加载参数到内核
sysctl -p
## 重启容器
docker restart c1
## 测试网络连接情况
ping [任意可用网址]

确认容器网路可用之后,就可以开始安装的工具。

## 补充两个常用的工具包,包括了 ip vim 工具
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 ~] # yum provides traceroute
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

## search检索工具包名
[root@localhost ~]# yum search epel
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.
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Linux安装Docker CE(Community Edition)的步骤如下: 1. 确保你的CentOS 7系统是64位,并且内核版本不低于3.10,因为Docker CE对此有要求。 2. 打开终端,输入以下命令来安装Docker CE的依赖包: ``` sudo yum install -y yum-utils device-mapper-persistent-data lvm2 ``` 3. 添加Docker CE的官方镜像源。输入以下命令来添加阿里云镜像源: ``` sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ``` 4. 更新本地镜像源并安装Docker CE。输入以下命令完成更新和安装: ``` sudo yum makecache fast sudo yum install docker-ce ``` 5. 启动Docker服务。输入以下命令来启动Docker: ``` sudo systemctl start docker ``` 6. (可选)设置Docker服务开机自启动。输入以下命令来设置开机自启动: ``` sudo systemctl enable docker ``` 7. 现在,你已经成功安装了Docker CE。你可以通过运行以下命令来验证安装是否成功: ``` sudo docker run hello-world ``` 这样就完成了在CentOS 7上安装Docker CE的过程。请注意,这里使用的是阿里云镜像源,你也可以选择其他镜像源进行安装。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [DockerLinux上的安装(CentOS7)](https://blog.csdn.net/qq_53104842/article/details/127474200)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值