docker 进行端口映射
docker里面的容器相当于一个微服务,对于服务,端口的使用是很重要的
我们可以使用 -p 参数执行端口映射
1、映射所有 IP 地址上的指定端口到容器内部
-p hostPort:containerPort
docker run -it -p 80:80 docker.io/centos:latest /bin/bash
2、映射指定 IP 地址上的指定端口到容器内部
-p ip:hostPort:containerPort
3、映射指定 IP 地址上的任意端口到容器内部
-p ip::containerPort
实例
在docker上安装nginx服务,并映射80端口
1、安装centos镜像的容器
docker run -it --name nginx docker.io/centos:latest /bin/bash
2、从容器里面测试是否能上网(说明可以,不行需要开网络的转发功能)
ping 114.114.114.114
3、在docker 里面安装nginx
yum list | grep nginx
yum install nginx.x86_64
4、查看下载完NG的配置文件(下载完成)
cd ./etc/nginx/
ls
5、这里介绍一个好用的上传文件的工具
yum install lrzsz
rz
安装 完成,方便我们将自己配置好的配置文件上传到容器里
6、退出容器,将容器做成一个镜像,方便我们以后使用
docker commit -it 74bf0165b29d nginx:v1
7、运行容器并映射端口
docker run -it -p 80:80 nginx:v1 bin/bash
8、查看端口映射情况
docker ps -a
9、查看端口的代理情况
netstat -antup | grep 80
注:要检查centos上的防火墙是否开启80端口
10、访问代理的网页
简单的代理转发,只为看实验效果(下面是我在NG里的配置文件)
server {
listen 80;
server_name 172.21.180.231;
charset utf-8;
location / {
proxy_pass https://www.baidu.com/
}
}
代理成功!!
来源:CSDN
作者:weixin_43928836
链接:https://blog.csdn.net/weixin_43928836/article/details/103472675