从零开始搭建私人服务器

以下文章属于本站原创作品,转载请注明出处

背景

本站通过 hexo 加上 Netlify 自动部署实现,只能展现静态内容,用来做博客正好。但是如果想搭建稍微复杂点的系统,就有点不满足需求了。闲暇时间在知乎上看见一篇文章。于是就动手购买配件,一步一步开始动手搭建自己的服务器,并将自己的步骤以及其中遇到的问题记录下来,目前主要打算用作 Web 应用的部署,以及私人网盘的搭建。有兴趣的同学可以参考知乎上的链接:搭建家庭 NAS 服务器有什么好方案?

硬件

  • 某宝购买迷你主机,配置为赛扬 2955U + 4G 内存 + 64 固态硬盘,发货默认安装了 win 7 系统,下载安装了鲁大师进行跑分,实测跑分有 4W 左右,主机价格为 **640 RMB**;

  • 某东购买笔记本硬盘,配置为希捷 7mm 薄盘,320G ,5400 转,价格为 **62 RMB**;

系统

  • 准备一个 U 盘,下载 UNetbootin,选择上面下好的镜像,将 U 盘制作成启动盘

安装步骤就不用我在这里赘述了,有疑问的同学可以参考此链接,Ubuntu 18.04 Server 版安装过程图文详解 。之所以安装 Ubuntu server 版的原因是,买来就是当作服务器的,如果安装桌面版的话,相信大多数人安装系统成功的第一件事就是进行各种个性化的设置,并且花大量时间去进行各种软件的安装以及桌面美化工作。这与我们搭建服务器的初心反而背道而驰了。

  • 花生壳内网穿透

进入 Ubuntu server,下载安装花生壳 Linux 版,可查看花生壳官方帮助文档 ,按文档来注册花生壳账号,注册成功后除系统默认赠送的一个域名外,还可以注册一个免费域名,但是需要花 6 RMB 开通体验版内网穿透功能。体验版有端口限制,目前我添加了两个映射,http 映射为服务器 Webmin * 的端口,之后可以利用 nginx 来进行管理。另外一个 tcp 映射是用作 SSH 远程登录的,其中服务器端口为 22。

这里简单介绍下 ssh 远程登录命令的使用,内网下面使用 ssh [内网IP] -l [用户名],按照上图右侧添加端口后,可以使用 ssh [用户名]@[域名] -p [外网端口]

应用

Webmin 对服务器进行可视化管理

Docker 容器基本操作

Docker 现在如日中天,这不是单纯的炒概念,而是确确实实解决了开发与运维的痛点,因此在企业开发中得到了非常广泛的使用。

容器创建加启动:

  1. 后台型容器,以 nginx 为例

    1
    docker run --name nginx -d -p 8080:80 nginx

    --name 表示创建容器的名字,-d 表示容器在后台运行,-p 表示将容器的 80 端口映射到宿主机的 8080 端口。

  2. 交互型容器,例如创建一个 Ubuntu 容器

    1
    docker run --name ubuntu -it ubuntu /bin/bash

    其中 -it 参数,i 表示开发容器的标准输入,t 则告诉 docker,为容器创建一个命令行终端,读者就可以在这个终端里愉快的操作 Ubuntu 了。

容器删除:

  1. 单个删除

    1
    docker rm -f [id]/[name]

    以上命令可以通过 name 或者 id 删除一个容器。加上 -f 参数可以删除一个正在运行的容器。

  2. 批量删除

    1
    docker rm $(docker ps -a -q)

    docker ps -a -q 会列出所有容器的 id ,供 rm 命令删除。

其他命令:

  1. docker ps 查看运行中的容器,docker ps -a 查看所有容器。
  2. 使用 docker start 命令结合容器 id 或者容器 name 可以启动一个容器,通过 docker stop 命令可以终止一个容器。

使用 Portainer 对 Docker 进行可视化管理

通过 docker 来部署 portainer:

1
2
$ docker volume create portainer_data
$ docker run --name portainer -d -p 8000:8000 -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

在浏览器输入ip地址:9000 就可以进入 portainer 页面了。首次登录需要设置一个账号,根据提示进行设置即可。

安装 Nextcloud 搭建私人网盘

Ubuntu 支持 snap 安装,仅需一行代码

1
sudo snap install nextcloud

同样也可以使用 docker 进行部署,最终登录进去后,效果图如下,也可以在手机应用商店搜索,安装 APP 后绑定服务器就可以进行使用了。

最后

全部过程下来一共花费 **708 RMB**,并且之后的花销主要就是电费,该迷你主机使用 12w 电源,功耗也是十分小的。但是在之后无论是想锻炼自己的技术,做出一些真正实用的系统,或者存储个人文件来说,都是非常便利的,再也不用担心下载文件不安全或者被限速啦。

评论