【GoLang】将项目部署在服务器上
创始人
2025-01-21 09:06:14
0次

在阿里云上领取一个服务器(新人免费三个月)

注册登录之后,选择云服务器ECS
在这里插入图片描述

之后选择领取的服务器配置,这里操作系统我们选择的是CentOs,其余选项根据个人。
在这里插入图片描述

最后设置一下这个服务器(也叫实例)的登录名和登录密码:
在这里插入图片描述

现在就可以在控制台里看到我们的服务器了
在这里插入图片描述

‘注意到这里有一个我们服务器的公网IP,等等会用到。在这里插入图片描述

接着我们需要用到一个软件——Xshell,在浏览器可以直接搜索下载这个软件
。
在这里插入图片描述

Xshell下载完成之后,打开它,会自动弹出一个会话窗口,这里我们点击新建,接着在名称这里填入自己想取的名称,主机这里填入刚刚新建服务器的公网IP,其余不填,接着点击连接。
在这里插入图片描述

接着会弹出这个窗口,我们需要输入刚刚创建的服务器的登录名,点击确定。

接着需要输入刚刚创建的服务器的登录密码,点击确定。在这里插入图片描述

接着出现下方代码就表示连接成功。
在这里插入图片描述

接着我们需要更新源,在黑窗口中输入yum check-update
在这里插入图片描述

在服务器上添加项目端口

点击管理规则
在这里插入图片描述
点击手动添加在这里插入图片描述
接着输入下图内容,保存即可
在这里插入图片描述

在本地将GoLang程序打包

(若不打包,直接将Go程序复制到服务器中运行的话,需要单独配置Go环境,比较麻烦。打包了则不需要Go环境,直接运行即可)

打开GoLand的终端,输入go env -w GOOS=linux
再输入go build -o main
都输入完成后,就打包完成了,片刻后在目录内会出现一个不带后缀的main,如下图所示
注:这里的main指的是项目打包成的文件的名称,可以填别的名称,不一定非得叫main。
在这里插入图片描述

将本地打好的包导入到服务器中

打开Xtfp 7 ,选择前面在Xshell 7中创建的对话,点击连接
在这里插入图片描述

进来之后,页面左边是我们的主机,右边是我们的服务器
在这里插入图片描述

接着在右边的服务器进行操作,点击第一行的… ,返回到上一级目录
在这里插入图片描述

进入usr文件夹
在这里插入图片描述

新建一个文件夹,名字任意都行,我这里叫workspaces
在这里插入图片描述

进入workspace中,再创建一个文件夹,名称与自己项目名相同
在这里插入图片描述

将打包好的文件复制到这个文件夹中
在这里插入图片描述

运行项目文件

打开Xshell 7,连接上自己服务器的会话

进入到打的包存放的目录
cd /usr/workspace/idiom

给打的包开启权限。
chmod +x main

给打的包设置后台运行
nohup ./main
在这里插入图片描述

接下来等待一段时间即可,项目编译需要时间。

输入以下代码,用于检测项目是否开启成功
lsof i:项目端口号

若出现下图结果,则表示开启成功
在这里插入图片描述

可以用apifox进行检测
将此处ip改为服务器公网IP之后,发送信息进行测试,若回复正常即可。
在这里插入图片描述

至此,一个不包含mysql的项目已经部署完成。

若项目内包含mysql,则还需要进行mysql的配置,请继续往下看。

(选看)若项目内包含mysql

作者制作此项目时用的是本地的mysql,但项目部署在服务器上就需要用到服务器上的mysql,于是需要将本地的mysql数据导入到服务器的mysql中。

在服务器中安装MySql

首先打开Xshell , 依次输入下方命令
sudo yum update
用于将CentOs系统更新到最新版本,确保每个命令都是新的。

sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
用于下载CentOs系统对应的MySql

sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
等待系统终端提示你连续更新和安装 .rpm 数据库

sudo yum install mysql-server
安装 MySQL Server。
此操作运行后会出现提示,我门需要按下键盘“y”键后回车,表示确定

最后在终端显示界面末尾的看到“Finished” 消息,就代表MySql已经成功安装在了服务器系统上。

sudo systemctl start mysqld
用于启动MySql

sudo systemctl status mysqld
用于检查MySql运行状态和属性

在这里插入图片描述
图中绿色字体表示MySQL 安装处于活动状态并且运行良好。

至此,我们已完成在服务器上的MySql的安装。

在服务器上添加mysql端口

在阿里云服务器上添加,步骤与之前添加项目端口相同
在这里插入图片描述

在项目代码中,将mysql连接信息进行修改

(此步骤本应在打包之前就已经完成,为文章顺序流畅,放在此处,愿谅解)
(若您的项目在之前就已打包并在服务器中运行,则需要将原有进程杀死,再将此处信息修改之后,重新打包并在服务器上运行)
将本地mysql的连接信息改为服务器的mysql的连接信息
主要改3个地方,mysql用户名、密码、IP
在这里插入图片描述

将本地的MySql数据同步到服务器的MySql中

这里我用的是NaviCat,进入首页,选中项目的数据库,右键点击,接着选中转储SQL文件、结构和数据。在这里插入图片描述

接着随意编辑好文件名称和保存路径即可,点击保存在这里插入图片描述
打开 Xtfp 7, 将次sql文件复制到服务器中存放自己项目的文件夹内
在这里插入图片描述
打开Xshell 7, 进入到自己的会话

cd /usr/workspace/idiom
进入到存放打包文件的文件夹

mysql -u用户名 -p密码
登录服务器的mysql

create database idiomgames;
创建自己的项目数据库,名字随意

use idiomgames;
进入到此数据库中

source idiomgames.sql
source + 前面导出的sql文件,用于执行此sql文件,也就是把sql文件里的数据都导进来了。

show tables
用于检查是否导入成功,若数据正确,则导入成功。

至此,项目部署完成,撒花。

相关内容

热门资讯

微扑克辅助器!德州平台有没有挂... 您好:德州平台有没有挂这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...
AApoker透视挂!wepo... 很多人使用云端 AI 时,都担心wepoker透视挂是真的吗、内部资料上传带来隐私风险。这款本地运行...
WePoKer透视!wepok... WePoKer透视!wepoker如何拿到好牌,分享透视多功能软件APP模板;近期一款 AI 黑科技...
红龙扑克透视挂!德扑之星规律,... 红龙扑克透视挂!德扑之星规律,解迷透视挂多功能插件APP法门是一款可以让一直输的玩家,快速成为一个“...
aapoker透视!WePoK... 您好,WePoKer有没有透视软件挂这款游戏可以开挂的,确实是有挂的,需要了解加微【48527505...
红龙扑克开挂!微扑克的辅助工具... 很多人使用云端 AI 时,都担心微扑克的辅助工具有哪些、内部资料上传带来隐私风险。这款本地运行的 A...
aapoker辅助!wepok... 您好:wepoker私人局怎么设置抽水这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会...
aapoker辅助挂!wepo... aapoker辅助挂!wepoker透视挂安全吗,普及辅助挂多功能方法APP策略AI 智能体黑科技再...
红龙PoKer辅助挂!wepo... 您好:wepokerplus透视挂真的假的这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌...
德扑之星辅助挂!德州ai辅助有... 德扑之星辅助挂!德州ai辅助有用吗,详细辅助挂多功能下载APP指南书是一款可以让一直输的玩家,快速成...