内网环境下让容器上网,并制作一个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
相关推荐
im_AMBER2 小时前
React 17
前端·javascript·笔记·学习·react.js·前端框架
谷歌开发者3 小时前
Web 开发指向标 | Chrome 开发者工具学习资源 (六)
前端·chrome·学习
QT 小鲜肉5 小时前
【QT/C++】Qt定时器QTimer类的实现方法详解(超详细)
开发语言·数据库·c++·笔记·qt·学习
java_logo5 小时前
SGLANG Docker容器化部署指南
linux·运维·docker·容器·eureka·1024程序员节
Mr.Jessy6 小时前
Web APIs 学习第五天:日期对象与DOM节点
开发语言·前端·javascript·学习·html
Qayrup6 小时前
各个系统的 docker安装
运维·docker·容器
存在morning6 小时前
【人工智能学习笔记 三】 AI教学之前端跨栈一:React整体分层架构
笔记·学习·架构
巫婆理发2226 小时前
评估指标+数据不匹配+贝叶斯最优误差(分析方差和偏差)+迁移学习+多任务学习+端到端深度学习
深度学习·学习·迁移学习
代码or搬砖6 小时前
Docker 部署 Java 项目实践
java·docker·容器
霜绛7 小时前
C#知识补充(二)——命名空间、泛型、委托和事件
开发语言·学习·unity·c#