内网环境下让容器上网,并制作一个httpd容器

1.下载基础镜像

上一次,我们通过正向互联网代理在内网环境中,搭建了一个docker环境,具体环境如下:

复制代码
1) 内网docker服务器:192.168.123.1,操作系统为:redhat 7.9
2) 代理服务器(可通外网):192.168.110.2,操作系统为:redhat 7.9

我们在docker服务器上下载镜像进行测试:

复制代码
docker pull centos

2.运行容器

复制代码
docker run -itd -p 8080:80 --name wxtest_container --privileged centos /sbin/init

注:这里使用--privileged和/sbin/init参数启动容器,主要是为了方便在容器中安装软件,并通过systemctl命令启动软件服务

3.登陆容器

通过docker exec登陆容器

复制代码
docker exec -it wxtest_container /bin/bash

4.测试是否可以通外网

复制代码
curl https://www.baidu.com/

发现无法通外网

5.更改配置,让容器登陆外网

复制代码
vi /etc/profile
export http_proxy=http://192.168.110.2:9099
export https_proxy=http://192.168.110.2:9099
export no_proxy=localhost,127.0.0.1

source /etc/profile

6.测试是否可以通外网

复制代码
curl https://www.baidu.com/

7.配置yum源

由于在docker下没有安装wget工具,因此可以使用curl下载镜像源

复制代码
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

8.安装Apache http服务

复制代码
yum install -y httpd

9.创建默认的访问界面index.html,启动httpd服务

复制代码
echo 'HelloDocker' >> /var/www/html/index.html

systemctl start httpd
systemctl enable httpd

10.制作镜像

在docker服务器上,制作镜像

复制代码
docker commit wx_tests_container Self_httpd
相关推荐
HY小宝F7 分钟前
树莓派 FFmpeg 实战笔记(二):命令行、源码编译与硬件编码的真相
学习·职场和发展·ffmpeg
2601_9672642819 分钟前
Jetpack Compose 实践指南:从入门到进阶
java·学习
小雪崩1 小时前
嵌入式学习 day25:哈希表及排序与查找
linux·c语言·数据结构·学习·排序算法
gsls2008082 小时前
Penpot Docker 部署与 MCP 服务配置文档
运维·docker·容器·原型·penpot
yiqiefeimeng2 小时前
C语言指针难倒90%人?买房比喻让你瞬间开窍
c语言·学习·编程·指针·比喻
GHL2842710902 小时前
Skill学习
学习·ai
田径他爸来了2 小时前
嵌入式学习第30天——软中断,Ip进程间的通信
学习
xrlfreedom3 小时前
大厂 MCP 面试实录:本地 Server 远程化改造中的技术选型与落地实践
docker·json schema·mcp
白猫不黑4 小时前
网络安全/信息安全专业学习路线与入行指南:从大学到岗位的完整规划
网络·学习·安全·web安全·网络安全·黑客技术
世人万千丶4 小时前
鸿蒙项目实战 - 社区活动编排板:标签云布局算法与自动换行
学习·算法·华为·harmonyos·鸿蒙