华为云云耀云服务器L实例评测|云耀云服务器L实例部署Gogs服务器

2023-12-13 11:33:34

一、云耀云服务器L实例介绍

1.1 云耀云服务器L实例简介

云耀云服务器L实例是新一代的轻量应用云服务器,专为中小企业和开发者设计,提供便捷的开箱即用体验。该产品提供丰富且经过严格筛选的应用镜像,可一键部署应用,极大程度简化了客户在云端构建电商网站、Web应用、小程序、学习环境以及各类开发测试等任务的过程。

在这里插入图片描述

1.2 云耀云服务器L实例特点

  • 智能不卡顿:华为云擎天架构加持,软硬协同结合AI算法智能调度,为您提供优质性能。华为云全球存算一张网,数据传输时延比眨眼还短,满足游戏、音视频等低网络时延场景的高要求。

  • 价优随心用:超高性价比,超低门槛,敞开随心用。多种实例规格,平衡性能与成本。技术升级优化用云成本,普惠更多初创企业和开发者。

  • 上手更简单:多种镜像、资源组合一键下单。严选多款高品质镜像,经过华为云官方严格测试,覆盖七大场景,预置模板,快速搭建,安全可信。自动化编排,资源一键开通,业务分钟级上线。平滑学习曲线,向导式应用搭建,应用轻松启用。

  • 管理更省心:拓扑、资源、镜像可视化管理,业务架构透明化管理。贴心服务状态提醒,资源续退一键式操作,实现极简管理。资源负载、安全,使用率实时监控,保障服务永远在线。可选配丰富的安全服务,包括丰富的备份、主机安全等服务,提供最高等级的安全防护。

二、Gogs介绍

2.1 Gogs简介

Gogs是一款基于Go语言开发的自助Git服务,可以提供轻量级、易于使用的Git服务器。

2.2 Gogs特点

  • 用户仪表板、用户配置文件和活动时间表。
  • 通过 SSH、HTTP 和 HTTPS 协议访问存储库。
  • 用户、组织和存储库管理。
  • 存储库和组织网络钩子,包括 Slack、Discord 和 Dingtalk。
  • 存储库 Git 挂钩、部署密钥和 Git LFS。
  • 存储库问题、拉取请求、wiki、受保护的分支和协作。
  • 使用 wiki 从其他代码主机迁移和镜像存储库。
  • 用于快速编辑存储库文件和 wiki 的 Web 编辑器。
  • Jupyter Notebook 和 PDF 渲染。
  • 通过 SMTP、LDAP、反向代理、GitHub.com 和 GitHub Enterprise with 2FA 进行身份验证。
  • 自定义HTML模板,静态文件和许多其他文件。
  • 丰富的数据库后端,包括PostgreSQL,MySQL,SQLite3和TiDB。
  • 拥有超过 31 种语言的本地化。

三、本次实践介绍

3.1 本次实践简介

1.本次实践为个人测试学习环境,旨在快速部署应用,生产环境请谨慎;
2.本次实践环境为云耀云服务器L实例,使用的应用镜像为Portainer 2.18.4;
3.由于使用的应用镜像为Portainer,云服务器自动已部署好Docker环境;
4.在华为云云耀云服务器L实例上部署Gogs服务器。

3.2 本次环境规划

服务器类别应用镜像内网IP地址Docker版本Portainer版本操作系统版本
云耀云服务器L实例Docker可视化Portainer192.168.0.16824.0.42.18.4Ubuntu 22.04.1 LTS

四、远程登录华为云云耀云服务器L实例

4.1 复制弹性公网IP地址

华为云耀云服务器L实例请提前购买好,这里由于之前已经购买,直接使用即可。点击进入云耀云服务器L实例管理页面,复制其弹性公网IP地址,后面远程连接以及外网访问都要用上。

在这里插入图片描述

4.2 Xshell远程连接服务器

在Xshell工具中,填写服务器弹性公网IP地址、账号密码信息,ssh连接远程服务器。

在这里插入图片描述

4.3 检查操作系统版本

华为云耀云服务器L实例使用Portainer应用镜像时,使用的操作系统版本为Ubuntu 22.04.1 LTS。

root@hcss-ecs-f91c:~# cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

4.4 检查Docker环境

检查Docker版本,当前版本为24.0.4。

root@hcss-ecs-f91c:~# docker -v
Docker version 24.0.4, build 3713ee1

检查Docker服务状态,确保Docker服务正常运行。

root@hcss-ecs-f91c:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-09-27 15:05:06 CST; 2 days ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 1058 (dockerd)
      Tasks: 75
     Memory: 72.6M
        CPU: 2min 17.783s
     CGroup: /system.slice/docker.service

五、部署Mysql数据库

5.1 下载容器镜像

在docker hub拉取Gogs与Mysql镜像。

docker pull gogs/gogs:latest
docker pull mysql:5.7

在这里插入图片描述

5.2 创建挂载目录

执行以下命令,创建挂载目录/data/gogs/{data,mysql}。

mkdir -p /data/gogs/{data,mysql}

执行以下命令,对/data/gogs/目录进行授权。

chmod -R 777 /data/gogs/

5.3 创建Mysql容器

使用以下命令,创建Mysql容器。

docker run -d --name gogs-mysql --restart always -e MYSQL_ROOT_PASSWORD=gogs -e MYSQL_DATABASE=gogs -e MYSQL_USER=gogs -e MYSQL_PASSWORD=gogs -p 3306:3306  -v /data/gogs/mysql:/var/lib/mysql  mysql:5.7

在这里插入图片描述

5.4 检查Mysql容器状态

检查Mysql容器状态,确保Mysql容器正常启动。

root@hcss-ecs-f91c:~# docker ps
CONTAINER ID   IMAGE                                                 COMMAND                  CREATED              STATUS              PORTS              NAMES
23b9dc78b17b   mysql:5.7                                             "docker-entrypoint.s…"   About a minute ago   Up About a minute   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp            gogs-mysql

5.5 设置Mysql用户权限

进入到Mysql容器内,连接到本地数据库。

docker exec -it gogs-mysql /bin/bash  # 进入mysql容器内
mysql -uroot -p        # 连接本地mysql数据库

在这里插入图片描述

gogs用户进行授权,刷新权限即可。

GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'%' IDENTIFIED BY 'gogs';
FLUSH PRIVILEGES;

在这里插入图片描述

六、部署Gogs

6.1 创建Gogs容器

执行以下命令,创建Gogs容器。

docker run -d --name=gogs --restart always -v /data/gogs/data:/data -p 10022:22 -p 3000:3000 --link=gogs-mysql:mysql gogs/gogs

在这里插入图片描述

6.2 查看Gogs容器状态

检查Gogs容器状态,确保Gogs容器正常启动。

root@hcss-ecs-f91c:~# docker ps
CONTAINER ID   IMAGE                                                 COMMAND                  CREATED          STATUS                             PORTS                                              NAMES
d50d4e85bb34   gogs/gogs                                             "/app/gogs/docker/st…"   20 seconds ago   Up 19 seconds (health: starting)   0.0.0.0:3000->3000/tcp, :::3000->3000/tcp, 0.0.0.0:10022->22/tcp, :::10022->22/tcp   gogs
23b9dc78b17b   mysql:5.7                                             "docker-entrypoint.s…"   39 minutes ago   Up 39 minutes                      0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp                                 gogs-mysql

6.3 检查Gogs容器日志

检查Gogs容器运行日志,确保Gogs服务正常运行。

docker logs gogs

在这里插入图片描述

七、访问Gogs服务器

7.1 放行安全组端口

进入华为云云耀云服务器L实例的安全组管理页面,入方向放行10022与3000端口。

在这里插入图片描述

在这里插入图片描述

7.2 Gogs服务器的初始化配置

访问地址:http://弹性公网IP地址:3000/,进入到初始配置界面。

在这里插入图片描述

数据库设置:
数据库类型:Mysql;
数据库主机:127.0.0.1:3306;
数据库用户:gogs;
数据库密码:gogs;
数据库名称: gogs;
应用基本设置将应用 URL设置为http://弹性公网IP地址:3000/,其余默认即可。

在这里插入图片描述

创建管理员账号,自定义设置即可,点击“立即安装”。

在这里插入图片描述

在这里插入图片描述

八、Gogs服务器基本使用

8.1 更新用户头像

用户设置——头像设置,上传头像后,点击“更新头像设置”,用户头像就会刷新。

在这里插入图片描述

8.2 创建仓库

选择创建仓库,进入仓库创建页面。

在这里插入图片描述

选择仓库名称,点击“创建仓库”。

在这里插入图片描述
在这里插入图片描述

8.3 本地服务器配置

在本地服务器,执行以下命令,将本地内容推送到Gogs服务器的新建仓库中。

mkdir /test  && cd /test
echo "test01-aa"  > myweb.sh
git init
git add myweb.sh
git commit -m "first commit by wangming -v1.0.0"
git remote add origin http://120.46.81.11:3000/jeven/myweb.git
git push -u origin master

在这里插入图片描述

8.4 查看Gogs服务器仓库

查看新建仓库myweb状态,发现已经成功上传本地内容。

在这里插入图片描述

文章来源:https://blog.csdn.net/jks212454/article/details/133432274
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。