首页 > 系统相关 >Docker①_VMware下载和部署_Linux

Docker①_VMware下载和部署_Linux

时间:2024-08-02 17:26:57浏览次数:20  
标签:桥接 虚拟机 宿主机 网络 模式 Linux Docker VMware

目录

1. VMware下载和部署Linux虚拟机

1.1 VMWare正版安装部署

1.2 VMWare个人安装

1.3 网络类型设置为桥接模式

1.3.1 参考配置为桥接模式

1.3.2 三种模式区别

1.3.3 VMnet1和8的IP地址的主要用途

1.4 配置静态ip

2. 常见问题解决

Xshell连接虚拟机(有前面部分步骤图)

Centos7静态IP的配置

yum源出现问题的解决办法


1. VMware下载和部署Linux虚拟机

1.1 VMWare正版安装部署

首先打开浏览器并访问VMware的官方网址

https://www.vmware.com/

暂时:个人正版下载参考视频:

博通注册下载vmware workstation pro 手把手全流程_哔哩哔哩_bilibili


1.2 VMWare个人安装

以下软件包也可以自己上网搜索下载

VMWare下载:

VMware 17 中文版-VMware Workstation下载V17.5.1 官方中文正式版-西西软件下载

https://jingyan.baidu.com/article/f0062228713309fbd3f0c8f4.html

CentOS-7下载:

centos-7-isos-x86_64安装包下载_开源镜像站-阿里云


下面的安装虚拟机的博客:

【虚拟机专题】VMware——镜像安装与配置_虚拟机vmware端口镜像配置-CSDN博客


视频教程:

VMware虚拟机安装Linux教程(精简)_哔哩哔哩_bilibili


1.3 网络类型设置为桥接模式

1.3.1 参考配置为桥接模式

  • 打开网络和internet设置-->以太网-->更改适配器选项-->本地连接右键进入属性-->打开VMvare Bridge Protocol。

本来没有勾上就勾上。


  • 确保Vmware上 虚拟机-->设置-->网络适配器-->勾选桥接模式,确保该虚拟机勾选了桥接模式。

        以上步骤完成后,虚拟机仍不能使用桥接模式上网,则问题大概率出在虚拟机的网络设置里无桥接网络,需进行以下操作,完成后方可正常上网:

        Vmware 编辑-->虚拟网络编辑器-->更改设置-->选中桥接模式(自动(DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址))-->应用-->确定(这里的0和1和8的子网地址默认的就行)

点击右下角后修改成类似下面的:

        0是桥接模式,1是主机模式。8是NAT模式,0最好不要设置成自动桥接,设置成自己电脑连的网,这里是WIFI的名称。


1.3.2 三种模式区别

bridged(桥接模式)

        在这种模式下,vmware虚拟出来的操作系统就像是局域网中的一台独立的主机. 它可以访问网内任何一台机器,需要手工为虚拟系统配置IP地址、 网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信,虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑 从网络技术上理解相当于在宿主机前端加设了一个虚拟交换机,然后宿主机和所有虚拟机共享这个交换机

缺点:容易造成ip冲突


NAT模式

        用NAT模式,就是让虚拟系统借助NAT的功能,通过宿主机所在的网络来访问公网。  在这种模式下宿主机成为双网卡主机,同时参与现有的宿主局域网和新建的虚拟局域网,但由于加设了一个虚拟的NAT服务器,使得虚拟局域网内的虚拟机在对外访问时,使用的则是宿主机的IP地址,这样从外部网络来看,只能看到宿主机,完全看不到新建的虚拟局域网。

优点:虚拟系统中不用进行任何手工配置就能直接访问互联网,只要宿主机器能访问互联网即可


Host-only(主机模式)

        这种模式下新建了一个由所有虚拟机与宿主机所构成的局域网,但该局域网与宿主机本身所处的现有局域网是相互独立的,如果不做额外路由设置,这两个局域网之间不会连通,因此新建的局域网可以认为是一个单独从属于当前宿主机的私有网络,其成员为当前宿主机和相关的所有虚拟机。

缺点:是一个独立的主机,不能访问外网


1.3.3 VMnet1和8的IP地址的主要用途

VMware Network Adapter VMnet1(仅主机模式)

  1. 内部通信:VMnet1用于仅主机模式(Host-Only),这种模式下虚拟机只能与宿主机进行通信,无法访问外部网络。VMnet1虚拟网卡的IP地址是VMware系统指定的,通常与物理网卡的IP地址不在同一网段,以确保内部网络的封闭性和安全性。
  2. 提高安全性:由于仅主机模式将虚拟机与外部网络隔离,它常被用于需要高安全性的场景,如内部测试、开发环境等。VMnet1的IP地址在此模式下用于确保虚拟机与宿主机之间的安全通信。

VMware Network Adapter VMnet8(NAT模式)

  1. 网络地址转换:VMnet8用于NAT(网络地址转换)模式,该模式下虚拟机可以通过宿主机访问外部网络。VMnet8虚拟网卡的IP地址是在安装VMware时由系统指定生成的,不要随意修改,否则可能导致主机和虚拟机无法通信。
  2. 提供接口:VMnet8虚拟网卡为主机和虚拟机之间的通信提供了一个接口,即使主机的物理网卡被关闭,虚拟机仍然可以通过NAT服务连接到Internet。
  3. 端口映射:在NAT模式下,可以使用端口映射功能,将访问主机特定端口的请求映射到虚拟机的相应端口上,从而实现外部访问虚拟机内部服务的目的。

1.4 配置静态ip

操作:vim /etc/sysconfig/network-scripts/ifcfg-你的网卡名字(一般是ens33)

  • 1. 配置文件命令:
vim /etc/sysconfig/network-scripts/ifcfg-ens33

以下是本人的配置(需要改的基本注释了):

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" # 使用静态IP地址,默认为dhcp 
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
#IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="ac935be6-853d-4f08-aa31-b35e4f0dfb68"
DEVICE="ens33"
ONBOOT="yes" # 指定网卡在系统启动时自动启用

IPADDR="192.168.0.21" # 需要和设置的IP段统一,连wifi的话就是前24位一致(192.168.0)
NETMASK="255.255.255.0"
GATEWAY="192.168.0.1" # 和虚拟网卡设置的网关一致
DNS1="8.8.8.8"# 没有自己的DNS就写公网的8888或者114.114.114.114
ZONE=public

相关知识:桥接模式ifcfg-ens33文件中的GATEWAY地址

  • ifcfg-ens33文件中的GATEWAY地址这里使用桥接模式所以和WIFI的字段一致。

ifcfg-ens33文件中的GATEWAY地址设置主要取决于你的虚拟机是如何连接到外部网络的:

  1. 如果你的虚拟机使用NAT模式(通常是VMnet8),则GATEWAY地址应该设置为VMware NAT服务为虚拟机网络分配的网关地址。这个地址不是VMnet8接口本身的网关地址,而是VMware NAT服务为虚拟机网络配置的一个内部网关地址。

  2. 如果你的虚拟机使用桥接模式(不是VMnet1或VMnet8,而是直接连接到宿主机的物理网络),则GATEWAY地址应该与宿主机在同一网络上的物理网关地址相同。

  3. 如果你的虚拟机使用仅主机模式(通常是VMnet1),并且你希望虚拟机能够与宿主机通信但不需要访问外部网络,则GATEWAY地址可能不是必需的,或者你可以将其设置为宿主机的IP地址(但这通常不是最佳实践,因为它可能不会按预期工作)。


  • 2. 修改/etc/sysconfig/network
vim /etc/sysconfig/network

执行上面命令后把下面代码粘贴上去,保存退出。

# Created by anaconda
NETWORKING=yes
GATEWAY=192.168.0.1

        在CentOS(或更广泛地说,在Linux系统中)设置/etc/sysconfig/network文件中的GATEWAY为默认网关(Default Gateway),它是网络数据包在无法直接到达目的地时会被发送到的地址。具体来说,当一台设备(如CentOS虚拟机)想要与不在其直接网络段(即子网)内的另一台设备通信时,它会将数据包发送到默认网关,由网关进行进一步的路由处理,最终将数据包发送到目标地址。

        如果你的系统不需要通过网关连接到外部网络:例如,你的系统是完全独立的,或者它使用其他机制(如VPN、直接连接等)来访问外部网络,那么你可以考虑删除或注释掉 GATEWAY 设置。但是,请确保这样做不会意外地断开你需要的网络连接。

  • 3. 重启网络服务
service network restart

重启网络服务后ping 4399.com或者ping baidu.com,查看网络是否连通,这个也很重要

如果不是出现未知的名称或服务基本就是ping通了

ping通了就基本算部署好了,还没ping通就可以上网搜搜,下面是常见问题的参考方法。


2. 常见问题解决

        出现问题一般直接搜AI或者搜博客和视频,不行只能问相关领域的人了。下面是在众多教程中选的一些比较有用的。

Xshell连接虚拟机(有前面部分步骤图)

Xshell如何连接虚拟机?_xshell连接虚拟机-CSDN博客


Centos7静态IP的配置

centOS7静态IP的配置_哔哩哔哩_bilibili


yum源出现问题的解决办法

(有可能是网络没配好)

yum安装显示没有可用的软件包-阿里云开发者社区

yum源被禁用的解决方法_yum repolist all仓库全部禁用-CSDN博客


暂结束。

标签:桥接,虚拟机,宿主机,网络,模式,Linux,Docker,VMware
From: https://blog.csdn.net/GRrtx/article/details/140819292

相关文章

  • 在windows上用docker编译ceph
    Why为什么要在windows上跑docker去编译ceph的代码?是松鼠哥吃太饱了吗?当然不是~在实际生产问题处理中,很多时候会遇到棘手的情况,需要快速修改并编译得到可用的二进制程序,例如上篇中,松鼠哥处理多个osd连续的down时,就需要导出其中的一些pg,但是pg的数据导出会因为其中的一些对......
  • .net项目使用Docker部署(包括解决后台验证码,部署后不显示的问题)
    Vue部署到Docker参考文档:手把手教你用Docker部署Vue3项目_docker部署vue3项目-CSDN博客参考文档:dockerfile部署前端vue项目_vuedockerfile-CSDN博客nginx文档:使用docker安装nginx-静以修身俭以养德-博客园(cnblogs.com)结合使用了两个文档的方法和DockerFIle区别......
  • 在Linux上创建一个.NET Core应用作为服务运行
    要在Linux上创建一个.NETCore应用作为服务运行,你可以使用systemd来管理你的服务。以下是创建服务的基本步骤和示例代码:确保你的.NETCore应用已经发布并且可以在Linux上运行。创建一个新的systemd服务文件。创建一个名为yourapp.service的文件,替换yourapp为你的应用......
  • crontab在linux中的语法规则
    总结:  分钟小时日月周数值范围 0~590~231~311~120~7(0和7都表示周日);MON~SUN每* 每分钟每小时每天每月 区间-a-b:从a分到b分a-b:从a点到b点a-b:从a号到b号a-b:从a月到b月a-b:从周a......
  • .net 8 应用在docker容器中创建失败 Failed to create CoreCLR, HRESULT: 0x80070008
    在UAT环境中docker容器里部署.net8应用没问题,在dev环境dockerrun启动失败,并报错FailedtocreateCoreCLR,HRESULT:0x80070008以下文章解决了我遇到的问题,感谢https://www.cnblogs.com/cyq1162/p/17981333处理办法增加--security-optseccomp=unconfineddockerrun-......
  • linux shell学习(上)
    第一个shell脚本打开文本编辑器(可以使用vi/vim命令来创建文件),新建一个文件test.sh,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell脚本,扩展名就用php好了。输入一些代码,第一行一般是这样:实例#!/bin/bashecho"HelloWorld!"#......
  • linux shell 写的一个小玩意(bash含99乘法表和计算器)
     esac.sh 主页面#!/bin/shwhile:do    echo"***********************************"    echo"*                *"    echo"*  输入你想要点的妹妹:1-3号 *"    echo"*    ......
  • centos7 解决docker 拉取镜像错误 error pulling image configuration: download fai
    为什么会出现i/otimeout错误?i/otimeout错误主要是由于网络连接不稳定或者服务器响应慢导致的。当Docker尝试从镜像仓库拉取镜像时,如果在规定时间内没有得到响应,就会出现i/otimeout错误。“错误的根源在于网络连接和镜像仓库的响应速度” 解决方案:换源为了解决这个......
  • Linux新建一个服务
    新建一个服务你可以创建一个Systemd服务单元,以便在系统启动时运行特定的脚本或程序。首先,创建一个.service文件,例如my_service.service,并将其放在/etc/systemd/system/目录下。在这个文件中,定义你的服务,包括启动方式、依赖性等。例如,my_service.service文件可能如下所示:[Unit]......
  • Linux多硬盘合并统一挂载
     文章目录一、问题描述二、基本概念三、操作流程1.查看磁盘2.创建PV3.查看PV信息4.创建VG5.查看卷组6.创建逻辑卷7.查看分区8.格式化分区9.挂载目录10.开机自动挂载一、问题描述书接上回Linux服务器挂载新硬盘,最开始我这台机器挂载了一块4T的硬盘,后来空间不够用了又加......