欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker 网络 端口映射

程序员文章站 2022-06-04 20:01:38
...

一.本地操作

1.如何将 nginx 暴露给外界

  创建 nginx 服务器

    docker run  --name web -d nginx

  查看 nginx 的 ip地址

    docker network inspect bridge

2.使用端口映射 在外网也能访问 nginx 删除旧的nginx

    将容器的 80 端口 映射到本地的 8888 端口

    前面是本地端口 后面是容器端口

    docker run  --name web -p 8888:80-d nginx

3.添加部分参数 使 127.0.0.1 支持访问 虚拟机容器的服务器  修改 Vagrantfile 为

# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.require_version ">= 1.6.0"
boxes = [
    {
        :name => "docker-node1",
        :eth1 => "192.168.205.10",
        :mem => "1024",
        :cpu => "1",
        :port => "8888"
    },
    {
        :name => "docker-node2",
        :eth1 => "192.168.205.11",
        :mem => "1024",
        :cpu => "1",
        :port => "9999"
    }
]
Vagrant.configure(2) do |config|
  config.vm.box = "centos/7"
  boxes.each do |opts|
      config.vm.define opts[:name] do |config|
        config.vm.hostname = opts[:name]
        config.vm.network "forwarded_port", guest: 80, host: opts[:port]
        config.vm.provider "vmware_fusion" do |v|
          v.vmx["memsize"] = opts[:mem]
          v.vmx["numvcpus"] = opts[:cpu]
        end
        config.vm.provider "virtualbox" do |v|
          v.customize ["modifyvm", :id, "--memory", opts[:mem]]
          v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]
        end
        config.vm.network :private_network, ip: opts[:eth1]
      end
  end
  config.vm.synced_folder "./labs", "/home/vagrant/labs"
  config.vm.provision "shell", privileged: true, path: "./setup.sh"
end

4.删除虚拟机 并 重新 up

  vagrant destroy

  vagrant up

5.重新安装 web  并 访问 127.0.0.1:8888 即可

  docker run  --name web -p 80:80 -d nginx

 

二.阿里云操作

  docker run  --name web -p 80:80 -d nginx

  然后访问 公有 ip 地址即可出现nginx 的 welcome 页面