内网环境下让容器上网,并制作一个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
相关推荐
浩瀚地学2 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习
JeffDingAI2 小时前
【Datawhale学习笔记】深入大模型架构
笔记·学习
暖阳之下2 小时前
学习周报三十一
学习
Master_oid4 小时前
机器学习29:增强式学习(Deep Reinforcement Learning)④
人工智能·学习·机器学习
楼田莉子4 小时前
Linux学习之磁盘与Ext系列文件
linux·运维·服务器·c语言·学习
一条闲鱼_mytube4 小时前
智能体设计模式(三)多智能体协作-记忆管理-学习与适应
人工智能·学习·设计模式
丝斯20116 小时前
AI学习笔记整理(50)——大模型中的Graph RAG
人工智能·笔记·学习
一允6 小时前
Git学习记录
git·学习
崇山峻岭之间6 小时前
Matlab学习记录37
android·学习·matlab
开开心心_Every6 小时前
免费窗口置顶小工具:支持多窗口置顶操作
服务器·前端·学习·macos·edge·powerpoint·phpstorm