博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
docker原始镜像启动容器并创建Apache服务器实现反向代理
阅读量:4294 次
发布时间:2019-05-27

本文共 1257 字,大约阅读时间需要 4 分钟。

1.建立容器,并挂载源

docker run -it -v /etc/zypp/repos.d/:/etc/zypp/repos.d/ suse/sles12 /bin/bash

2.安装vim,net-tools,apache2

zypper in vim

zypper in net-tools  //有了他可以使用ifconfig

zypper in apache2

3.用pipework给容器分配ip地址(提前建立好桥)

pipework br193 4f6d 146.240.193.110/24@146.240.193.254   //前面一个ip就是ip,后面一个是网关

4.因为我是在容器里,只能用原始的命令启动Apache服务

/usr/sbin/httpd-prefork -f /etc/apache2/httpd.conf

另外如果有systemctl的话,可以这样启动

systemctl restart apache2

5.在/srv/www/gtdocs下创建index.html文件

通过浏览器访问

146.240.193.110

如果想开放8080端口:

就到/etc/apache2/下找listen.conf文件

在listen:80下面加一行listen:8080

正向代理:代理我们访问某些网站,比如用翻墙软件,访问国外网站。

反向代理:访问第一个服务器,再通过这个服务器向内访问另一个服务器,这样做的目的是隐藏服务器。

Apache反向代理的实现:

找到/etc/apache2/下的httpd.conf文件

在底部添加如下代码:

ServerAdmin xxx@unionpay.com

ServerName 146.240.194.11                          //主机的ip,可以不设置,随意写
ProxyPass / http://146.240.194.15:80/
ProxyPassReverse / http://146.240.194.15:80/                 //代理主机的ip和开放的端口
<IfModule ssl_module>                                                       //加载的模块
    LoadModule rewrite_module /usr/lib64/apache2/mod_rewrite.so
    LoadModule proxy_module /usr/lib64/apache2/mod_proxy.so
    LoadModule proxy_http_module /usr/lib64/apache2/mod_proxy_http.so
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
</IfModule>

补充:

在容器中不能使用这个命令:rcapache2 restart,但是物理机是可以的。

docker容器不同于linux,不能用start容器后,在/etc/rc.d/中自启动脚本或者命令,要用dockerfile的cmd命令

转载地址:http://mkbws.baihongyu.com/

你可能感兴趣的文章
CMake Error:Failed to find "glu32" in "" with CMAKE_CXX_LIBRARY_ARCHITECTURE "".
查看>>
异或的妙用
查看>>
libsvm3.2.1 - SVM多分类简单实现
查看>>
函数返回数组指针
查看>>
c++ time.h clock()程序计时
查看>>
C++ 二维数组sort排序
查看>>
函数中定义类
查看>>
回归分析
查看>>
Matlab实现遗传算法
查看>>
opencv配置
查看>>
rt-thread的内核对象管理深入解析
查看>>
LiteOS los_config.h说明
查看>>
从零开始学习FFT(快速傅里叶变换)
查看>>
Makefile教程
查看>>
arm-none-eabi交叉编译工具常用的一些指令
查看>>
Ubuntu 常用解压与压缩命令
查看>>
C语言结构体指针变量作函数参数
查看>>
C语言动态存储分配
查看>>
文科生清晰理解傅里叶变换
查看>>
C++数据类型
查看>>