docker端口映射原理_docker修改端口映射

docker端口映射原理_docker修改端口映射一、安装RabbitMQ[root@localhost~]#dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTS

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、安装RabbitMQ

[root@localhost ~]# docker ps
CONTAINER ID   IMAGE             COMMAND                  CREATED      STATUS         PORTS                                                                                                                                      NAMES
77926c97d516   rabbitmq:latest   "docker-entrypoint.s…"   8 days ago   Up 4 seconds   4369/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 5671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp   rabbitmq

二、防火墙放开端口

firewall-cmd --zone=public --add-port=15672/tcp --permanent

三、发现访问不通

# 宿主机-物理机
C:\Users\xiaxinyu3>telnet 192.168.163.137 15672
Connecting To 192.168.163.137...Could not open connection to the host, on port 15672: Connect failed

四、ifconfig发现docker用的是docker0网卡


[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:fc:f5:d7 brd ff:ff:ff:ff:ff:ff
    inet 192.168.163.137/24 brd 192.168.163.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::9558:eab:87fc:cc8e/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
    link/ether 02:42:fb:1f:63:85 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
    inet6 fe80::42:fbff:fe1f:6385/64 scope link
       valid_lft forever preferred_lft forever
5: veth3b2615d@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
    link/ether 9e:0e:d0:2a:09:08 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet6 fe80::9c0e:d0ff:fe2a:908/64 scope link
       valid_lft forever preferred_lft forever
9: veth7c88cb2@if8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
    link/ether d2:6b:be:ad:ae:57 brd ff:ff:ff:ff:ff:ff link-netnsid 2
    inet6 fe80::d06b:beff:fead:ae57/64 scope link
       valid_lft forever preferred_lft forever
11: veth7de00a6@if10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
    link/ether 22:57:5c:6d:84:2f brd ff:ff:ff:ff:ff:ff link-netnsid 1
    inet6 fe80::2057:5cff:fe6d:842f/64 scope link
       valid_lft forever preferred_lft forever

五、解决:把docker0网卡添加到trusted域

[root@localhost ~]# firewall-cmd --permanent --zone=trusted --change-interface=docker0
success


# 剔除方法
[root@localhost ~]# firewall-cmd --zone=trusted --remove-interface=docker0
success

六、重启加载配置

[root@localhost ~]# firewall-cmd --reload
success

七、重启docker服务

[root@localhost ~]# systemctl restart docker

八、Docker启动问题

ERROR: ZONE_CONFLICT: ‘docker0’ already bound to a zone

1.检查firewall-cmd中是否存在docker zone 

 firewall-cmd –get-active-zones

2 .如果“docker”区域可用,将接口更改为 docker0(非持久化)

sudo firewall-cmd –zone=docker –change-interface=docker0

3.如果“docker”区域可用,请将接口更改为 docker0(持久化)

sudo firewall-cmd –permanent –zone=docker –change-interface=docker0 

sudo systemctl restart firewalld

4 启动docker 

systemctl  start  docker

systemctl  status  docker

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180729.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker dockerfile详解_进入docker容器命令

    docker dockerfile详解_进入docker容器命令前言Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。Dockerfile简介Dockerfile是用来构建Docker镜像的构建文件,是由一系列

    2022年7月29日
    6
  • docker连接宿主机mysql_docker搭建mysql主从

    docker连接宿主机mysql_docker搭建mysql主从相信我,看完这一篇,mysql主从复制能遇到的错误在我这里都遇到了,docker能遇到的错误在我这里也遇到了,包括centos的错误如果你还没有用docker搭建过mysql先不要急着搭建集群,可以显示着用docker搭建一个mysql,这里有教程,可以先试着去搭建一个mysql:之前我们使用docker搭建了一个Mysql,那既然一个Mysql我们可以搭建成功,集群还不是分分钟,今天我们就简单搭建一个Mysql集群,就搭建一个最简单的一主一从的主从复制吧,

    2022年8月13日
    6
  • Linux&Docker&Mysql&GitWin常用命令

    Linux&Docker&Mysql&GitWin常用命令苦于有时候某个命令真的想不起,又得百度,干脆以后操作linux时,打开博文直接查询多爽。基于安装rabbitmq时,某个命令不会,写下的,后面再继续补充1.基本命令:删除文件:rm -rf + 名称查看当前路径: pwd复制文件:cp [ -r ] 源文件或目录 目标文件或目录复制多个文件:cp /home/usr/dir/{file1,file2,file3,file4} /home/usr/destination/显示解压文件的过程 tar -zxvf 文件名称 不显

    2022年6月13日
    29
  • 启动docker镜像命令_什么是docker镜像

    启动docker镜像命令_什么是docker镜像docker启动//加载镜像文件dockerload-imec2.tar//查看是否有mec:v2镜像dockerimagels//rundockerrun-itdmec:v2//查看容器iddockerps//执行dockerexec-it镜像idbash将文件从宿主机拷贝到docker里在宿主机里面执:dockercp宿主机中要拷贝的文件名及其路径容器名:要拷贝到容器里面对应的路径从docker里面拷文件到宿主机在宿主机

    2022年9月22日
    6
  • docker镜像操作_docker 本地镜像

    docker镜像操作_docker 本地镜像前言Docker的三大核心概念:镜像、容器、仓库。初学者对镜像和容器往往分不清楚,学过面向对象的应该知道类和实例,这跟面向对象里面的概念很相似我们可以把镜像看作类,把容器看作类实例化后的对象。|

    2022年7月30日
    11
  • yum直接安装docker-ce报错找不到安装包

    yum直接安装docker-ce报错找不到安装包

    2021年5月30日
    184

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号