帮助文档
专业提供香港服务器、香港云服务器、香港高防服务器租用、香港云主机、台湾服务器、美国服务器、美国云服务器vps租用、韩国高防服务器租用、新加坡服务器、日本服务器租用 一站式全球网络解决方案提供商!专业运营维护IDC数据中心,提供高质量的服务器托管,服务器机房租用,服务器机柜租用,IDC机房机柜租用等服务,稳定、安全、高性能的云端计算服务,实时满足您的多样性业务需求。 香港大带宽稳定可靠,高级工程师提供基于服务器硬件、操作系统、网络、应用环境、安全的免费技术支持。
服务器资讯 / 香港服务器租用 / 香港VPS租用 / 香港云服务器 / 美国服务器租用 / 台湾服务器租用 / 日本服务器租用 / 官方公告 / 帮助文档
利用虚拟机搭建一个apt服务器
发布时间:2024-03-08 05:28:10   分类:帮助文档
利用虚拟机搭建一个apt服务器

目录
目录
项目背景
项目名词
项目开发过程
项目开发的难点/坑点
总结


项目背景
由于公司新增生产车间,而生产车间距离公司总部很远,且要求不能使用外网,因此有了一个搭建私有apt服务器的需求,将生产所需软件安装包全部放在apt服务器上。
所以我在自己电脑上利用虚拟机现行尝试了一下,并记录过程。
项目名词
1.虚拟硬盘文件格式:VDI、VHD和VMDK
  VDI(VirtualBox Disk Image):是由Oracle VirtualBox虚拟化软件使用的虚拟硬盘文件格式,包含虚拟机的硬盘数据,包括操作系统、应用程序和用户数据。VDI文件可以动态增长,即在虚拟机使用空间时才会增长文件大小,通常用于Oracle VirtualBox虚拟机环境。VHD(Virtual Hard Disk):是由Microsoft Hyper-V和Virtual PC虚拟化软件使用的虚拟硬盘文件格式,包含虚拟机的硬盘数据,可以存储操作系统和数据。VHD文件可以是固定大小的,也可以是动态增长的,通常用于Microsoft的虚拟化软件环境。VMDK(Virtual Machine Disk):是由VMware虚拟化软件使用的虚拟硬盘文件格式,也存储虚拟机的硬盘数据,包括操作系统和数据。VMDK文件可以是单个文件或多个文件组成,通常用于存储虚拟机的硬盘数据,适用于VMware虚拟化软件环境。
2. 网络模式:NAT模式(Network Address Translation)和桥接模式(Bridge mode)
NAT模式:
        NAT模式是一种网络模式,其中虚拟机的网络流量被路由器或虚拟网络设备转发和转换,虚拟机的网络流量会被转换为宿主机的IP地址,然后再通过宿主机的网络接口进行网络通信。通常用于在虚拟化环境中创建私有网络,使虚拟机可以访问外部网络,同时隐藏虚拟机的真实IP地址。
桥接模式:
        桥接模式是一种网络模式,其中虚拟机直接连接到物理网络中,并通过物理网络中的网络设备(如交换机)来进行通信。在桥接模式下,虚拟机会获得物理网络中的一个独立IP地址,可以直接与物理网络中的其他设备进行通信,就像是物理设备一样。通常用于需要虚拟机与外部网络直接通信的场景,例如虚拟机作为服务器提供网络服务时。
项目开发过程
首先,安装virtualbox。virtualbox网站:https://www.virtualbox.org/ 使用virtualbox安装Ubuntu server。
 打开virtualbox,选择新建;       填写名称以及目录、类型、版本; 下一步,选择内存大小;  选择现在创建虚拟硬盘;                 虚拟硬盘文件类型选择VDI即可;  选择动态分配; 文件位置和大小;  然后点击创建。  创建之后,点击设置;  设置中,可以在系统选择项中增加处理器的数量; 选择存储, 选择镜像文件;  点击确定,并启动; 然后按照提示安装即可。
 3. 安装完成之后启动UbuntuServer。
使用nginx服务器:

sudo apt install nginx -y
nginx -v  //安装后查看版本号,是否安装成功

 提示

nginx version: nginx/1.18.0 (Ubuntu)      //表示安装成功

 可以查看是否运行

curl 'http://127.0.0.1'

 如图所示: 
 修改nginx配置
sudo vim /etc/nginx/sites-enabled/default

 图片中所示位置添加

autoindex on;    //开启目录列表功能


 保存,并重启服务;

sudo systemctl restart nginx.service

 在nginx服务器默认目录(/var/www/html/)下放置安装包,此处我新建了一个“setup”目录来放安装包

scp  test-gateway_1.0.2_amd64.deb w@192.168.2.19:/var/www/html/setup
//创建一个包含软件包信息的 Packages 文件,并将其压缩成 Packages.gz 文件
sudo dpkg-scanpackages .|gzip -c9>Packages.gz

自此,服务器搭建完成,可以测试了。
本机浏览器测试: 

 本机上添加apt服务器源地址

echo "deb [trusted=yes] http://192.168.2.19/setup ./" | sudo tee -a /etc/apt/sources.list > /dev/null 
sudo apt update   //更新源文件

安装测试:

 sudo apt install test-gateway

 
 可以正常安装,完成。
项目开发的难点/坑点
1. 保证虚拟机与物理机能够正常通信。
     虚拟机默认的网络模式是NAT网络地址转换模式,但此时我们需要虚拟机与本机通信,所以我们选择桥接模式。

设置虚拟机的IP地址:
在虚拟机中,

sudo nano /etc/netplan/00-installer-config.yaml     //编辑网络配置

network:
version: 2
ethernets:
enp0s3:
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1

保存,并使用新配置

 sudo netplan apply

 查看是否成功设置

ip a


  
2. 拷贝安装包到服务器。

scp: /var/www/html/setup/zh-XXX00_1.0.0_arm64.deb: Permission denied

拷贝安装包的时候可能会遇到这个问题。
有两个地方需要注意,一个是可能虚拟机没有设置ssh权限访问;

 此处默认是注释掉的,去掉注释,保存,并重启服务。

systemctl  restart sshd

 另一点,可能就是,nginx的默认目录(/var/www/html)具有权限问题

sudo chmod 777  /var/www/html/setup

 之后就可以正常拷贝了。
总结
动手才能发现问题,希望我的搭建过程能够帮上你。



香港云服务器租用推荐
服务器租用资讯
·广东云服务有限公司怎么样
·广东云服务器怎么样
·广东锐讯网络有限公司怎么样
·广东佛山的蜗牛怎么那么大
·广东单位电话主机号怎么填写
·管家婆 花生壳怎么用
·官网域名过期要怎么办
·官网邮箱一般怎么命名
·官网网站被篡改怎么办
服务器租用推荐
·美国服务器租用
·台湾服务器租用
·香港云服务器租用
·香港裸金属服务器
·香港高防服务器租用
·香港服务器租用特价