30分钟闲置服务器建站(gitlab为例)
前言
最近博主的阿里云主机又到了续费的时候了,刚买云主机的时候那是各种优惠各种打折,续费的时候只能当孙子了。
为了节省开支,又保证高性能的前提下,买了台10代NUC,内存和ssd自选,搭建一台个人服务器。
准备工作
1 安装linux系统
建议安装ubuntu,楼主安装了centos8,需要配置网络才能使用。安装系统的时候考虑到了服务器只用,所以选择了最小安装,不包括GUI交互界面。具体安装过程可以网上搜一下,不在这里具体阐述。
2 域名的购买,认证,备案。
在阿里云的【域名注册】里面可以选择一个自己喜欢的域名,之后按照步骤认证,解析域名,域名备案。
3 公网云主机
另外还需要一个公网IP,用来最为代理机器访问内网个人服务器,博主选择了盤石云,对于公网主机只需要大带宽以及优惠的价格即可。
所有的准备工作已经就绪,现在开始搭建应用吧。
frp内网穿透
如何通过公网IP代理到内网服务器呢,使用FRP内网穿透技术。
在云主机和内网主机都需要下载frp包,楼主用的是0.33版本。下载,解压。
在搭建frp之前,博主想在云主机上搭建Nginx,反向代理frp服务,但之后可能涉及到了跨域的问题,为了简化代理流程,直接使用frp的custom_domains配置域名解析。
1 云主机作为frp的服务端,需要配置frps.ini文件
[common]
bind_port = 9999 #作为frp连接的端口号,客户端需要使用该端口维持frp连接
vhost_http_port = 80 #http服务默认使用80端口
vhost_https_port = 443 #https服务默认使用443端口 [gitlab]
type = http # port 80 #指定gitlab服务
启动frp服务端 nohup ./frps -c ./frps.ini &
2 内网主机主机作为客户端,配置frpc.ini文件
[common]
server_addr = 110.43.140.172 #远程服务器ip地址
server_port = 9999 #frp端口 [gitlab]
type = http
local_ip = 127.0.0.1
local_port = 8099 #本机gitlab开放端口
custom_domains = code.gaojy.cc
启动frp客户端 nohup ./frpc -c ./frpc.ini &
管理面板
下载宝塔面板 https://www.bt.cn/ ,根据指南安装即可。安装完以后配置frp端口:
frps.ini
[baota]]
type = http # port 80
frpc.ini
[baota]
type = http
local_ip = 127.0.0.1
local_port = 8888
custom_domains = system.gaojy.cc
重启frp,效果如图,用来管理你的主机,监控及创建一些定任务等.
gitlab服务器搭建
继续面板的【软件商店】下载gitlab应用,点击安装。安装成功以后可看到运行状态,以及内部端口。
同样需要配置frp gitlab的端口,在上面的示例中已经展示。完成之后,来简单测试一下吧 http://code.gaojy.cc
以为这么快就结束了?天真了,刚安装完,clone的地址默认是内网ip和端口的地址,这个地址是无法被访问的。
变更gitlab的访问和clone地址
1 找到gitlab.rb文件 默认位置 /etc/gitlab/gitlab.rb 修改external_url
#external_url 'http://192.168.0.97:8099' 替换成域名 =>
external_url 'http://code.gaojy.cc:8099'
2 重新设置参数 并重启
# gitlab-ctl reconfigure
# gitlab-ctl restart
或者手动修改gitlab.yml /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
3 查看效果
发现ssh和http的clone地址已经变更。
总结
最后,因为博主居住证的问题暂时还没有通过工信部备案,会偶发拦截,刷新几次就好。后续将会结合drone,jfrog搭建devops编译发布流程,也欢迎大家把自己的代码托管进来。
另外内网服务器的内存还是小了点,后续将会升级。
30分钟闲置服务器建站(gitlab为例)的更多相关文章
- vps云服务器建站后绑定域名的方法?
有很多的新手站长们,都不知道vps建站后该如何绑定自己的域名,这里就Windows系统的VPS主机利用iis绑定网站域名的方法,简要介绍一下. 通常情况下,我们在使用IIS建站的时候,都会有一步提示, ...
- Linux服务器建站基础-选择何种配置和安装环境项目
我们准备在搬瓦工笔记中,边整理和分享利用Linux VPS建站过程的同时,也会分享关于用户在选择和使用VPS服务器以及网站管理运营中的一些心得和建议.经常有很多网友在很多主机论坛.QQ群众问道,有没有 ...
- 阿里云服务器建站——centos7部署apache+mysql+php
自己也是忙活了半天,才完成了阿里云服务器的建站,这里就来分享一下. 首先如果是要自己搭建一个网站的话,除了服务器以外还要购买域名,并且要去备案,一般在哪买的域名都有备案的系统,备案的话一般要两到三个星 ...
- 阿里云Ubuntu快速建站
阿里云Ubuntu快速建站 有一个小笑话: 从前有个程序员遇到了一个问题.他想,没事,我懂,用线程就好了.现他有两个问题了. 本人小白,对网站部署什么都不懂,只是申请个阿里云服务器,把我的站点放上去. ...
- wordpress建站如何用SMTP配置邮件通知
前提条件:你已经有了企业邮箱,相关文章请看:如何开通阿里云企业邮箱免费版(点此前往) 不建议使用主机商提供的邮箱,因为换主机商是比较常见的事情,因此导致的邮箱迁移就有些麻烦了,不如一开始就选择独立的第 ...
- 服务器购买+建站流程教程——适合新手没有经验的人Chinar总结
服务器购买购买教程 本文提供全图文流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创 ...
- vps建站教程 CentOS6如何安装配置FTP服务器
通过之前的几篇文章,我们都知道了如何配置PHP环境,也知道如何保护我们的vps以及如何绑定多个域名建设多个网站.有时候我们为了让我们的朋友也能用我们的vps建站又不想给他们太多权限,有时候我们想要当个 ...
- 2016windows(10) wamp 最简单30分钟thrift入门使用讲解,实现php作为服务器和客户端的hello world
2016最简单windows(10) wamp 30分钟thrift入门使用讲解,实现php作为服务器和客户端的hello world thrift是什么 最简单解释 thrift是用来帮助各个编程语 ...
- 建站服务器的最优选择之Windows Or Linux
转载于:http://www.0553114.com/news/detail-702287.html 不管是个人建站,还是中小型企业建站,选择一款合适的主机是站长朋友们共同的心愿.主机是选择Windo ...
随机推荐
- JVM系列之:String,数组和集合类的内存占用大小
目录 简介 数组 String ArrayList HashMap HashSet LinkedList treeMap 总结 简介 之前的文章中,我们使用JOL工具简单的分析过String,数组和集 ...
- 题解 洛谷 P4632 【[APIO2018] New Home 新家】
首先考虑可以用二分答案来解决询问,可以二分一个长度\(len\),若在区间\([x-len,x+len]\)内包含了所有\(k\)种的商店,那么这个\(len\)就是合法的,可以通过二分来求其最小值. ...
- 分布式 ID 解决方案之美团 Leaf
分布式 ID 在庞大复杂的分布式系统中,通常需要对海量数据进行唯一标识,随着数据日渐增长,对数据分库分表以后需要有一个唯一 ID 来标识一条数据,而数据库的自增 ID 显然不能满足需求,此时就需要有一 ...
- unittest学习笔记
File "C:\Program Files\Python36\lib\site-packages\selenium\webdriver\remote\errorhandler.py&quo ...
- 今天完成顺利编译d:\test\Console.java
今天完成顺利编译d:\test\Console.java import javax.swing.*;import java.awt.event.*; public class Console{ pub ...
- IDEA中搭建项目环境
ladies and gentlemen,Welcome to my blog! 本文主要在IDEA中搭建项目环境. 有问题和指正,欢迎下方留言~ 1. 使用GitLab将项目下载下来 1.1 选 ...
- laravel报错1071 Specified key was too long; max key length is 1000 bytes
Laravel 默认使用utf8mb4字符编码,而不是的utf8编码.因此运行php artisan migrate会出现如下错误: [Illuminate\Database\QueryExcepti ...
- c语言大小写转化函数(包括字母和字符串)
本憨憨忘了好几次了,这次一定记住他们! 首先大小写相差32.转换的话自己写函数也是可以写出来的. 1.字母 如果是字母转的话,用toupper(),tolower() 头文件是<ctype.h& ...
- Spring学习之动态代理的简单实现
先说一下代理模式的好处 1.可以使真实角色的操作更加纯粹,不用去关注一些公共的业务 2.公共的交给代理角色,实现了业务的分工 3.公共业务发生扩展的时候,方便集中管理 静态代理模式的缺点 1.一个真实 ...
- C++ 第三天 Vector、函数
1.Vector vector是一个动态增长的数组,它会随着我们添加的内容,会逐步的增加空间.实际上它并不是在原来的地方追加空间,而是开辟新的空间,然后把原来的数据都拷贝到新的空间里面去,接着让容器指 ...