飞牛NAS在docker容器安装MySQL并搭建Gitea环境

飞牛NAS在docker容器安装MySQL并搭建Gitea环境

1、FnOS在docker中安装MySQL数据库

1.1、安装MySQL数据库

​ 在fnOS中打开【Docker】应用,选择镜像仓库输入【MySQL】搜索镜像,找到自己需要的镜像下载。

在这里插入图片描述

1.2、创建MySQL在NAS上映射的文件夹

​ 在你想要的位置创建 MySQL 文件夹,并在文件夹中创建 data 和 log 文件夹。

在这里插入图片描述

1.3、添加容器并启动容器

​ 打开桌面的【Docker】应用,点击右上角的添加容器,容器名称、资源限制任意即可,【勾选☑️】开机自动开启。

在这里插入图片描述

点击【下一步】,进行端口设置和存储设置

端口设置:容器端口3306映射到本地3306端口,33060端口可以删可以保留,暂时不用不到

储存位置:分别把前面创建的data和log文件夹分别映射到【/var/lib/mysql】和【/var/log/mysql】。

如下图照抄就行,没有的话就点【添加路径】自己手动添加。

在这里插入图片描述

滚动条向下滚动,找到【环境变量】设置,添加如下的环境变量。

# root数据库密码变量
MYSQL_ROOT_PASSWORD=as123456
# 字符编码变量
MYSQL_CHARACTER_SET_SERVER=utf8mb4
MYSQL_COLLATION_SERVER=utf8mb4_unicode_ci

按图照抄,把代码复制进去,只有【MYSQL_ROOT_PASSWORD】后面的【as123456】是数据库的登录密码自己换成你自己的密码,这个密码很重要,要记好!!!

在这里插入图片描述

其他都保持默认,设置好下一步创建完成即可。

环境变量说明:

MYSQL_CHARACTER_SET_SERVER=utf8mb4

  • 含义

    • 定义 MySQL 服务器的默认字符集(Character Set)。

    • utf8mb4 是一种 Unicode 字符集,支持 4 字节的编码,可以存储所有 Unicode 字符。

    • 与旧的 utf8 不同,utf8mb4 能存储表情符号(如 😄)和特殊符号。

  • 作用

    • 设置为默认字符集后,数据库、表或列在未指定字符集时默认使用 utf8mb4

    • 适合需要多语言支持或存储表情符号的场景。

MYSQL_COLLATION_SERVER=utf8mb4_unicode_ci

  • 含义:

    • 定义字符集的默认排序规则(Collation)。

    • utf8mb4_unicode_ciutf8mb4 字符集的一种排序规则。

      • unicode:按照 Unicode 标准规则进行字符比较。

      • ci(Case Insensitive):大小写不敏感。

        • 例如:Aa 会被认为是相等的。
  • 作用:

    • 决定字符串在比较或排序时的行为。

    • 提供对多语言字符的智能排序,适合国际化需求。

总结

  1. 完整 Unicode 支持:

    • utf8mb4 可以存储所有 Unicode 字符,包括表情符号和特殊符号。
    • 推荐始终使用 utf8mb4,避免使用 utf8
  2. 智能排序和比较:

    • utf8mb4_unicode_ci 提供 Unicode 标准的排序规则,适合多语言环境。
    • 对大小写不敏感,提高字符比较的灵活性

1.4、创建数据库

找到容器中已经启动运行的【MySQL】,点击容器的【…】选择【终端】,点击【/bin/bash】连接
在这里插入图片描述
在这里插入图片描述

依次输入以下命令:

# 下面代码mysql是容器名称,根据自己创建的名称修改
mysql -u root -p

输入部署的时候设置的 【root】 密码,上面让记住的那个密码哦!!!

运行以下代码,允许【root】用户将自己拥有的权限授予其它用户

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

刷新权限

# 运行以下命令以确保权限生效:
FLUSH PRIVILEGES;

创建数据表

# 下面代码[Gitea]就是数据库名,只有在数据库不存在时才创建 Gitea 数据库,防止重复创建引起错误。
CREATE DATABASE IF NOT EXISTS Gitea;

在这里插入图片描述

如果之后需要搭建Gitea,择在数据库选项时填入这里创建的数据库名字 Gitea

数据库名:Gitea

用户名:root

密码:as123456 就是前面设置的root的密码

1.5、单独创建数据库用户使用

注意⚠️:如果感觉使用root用户不安全,也可以单独创建用户使用

1、创建用户并设置密码:

CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
  • 其中 ‘newuser’ 是用户名,‘%’ 表示允许从任何主机连接,‘password’ 是用户的密码。

2、授予全部权限:

GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%';
  • 表示所有数据库的所有表,GRANT ALL PRIVILEGES 授予用户全部权限。

3、刷新权限:

FLUSH PRIVILEGES;

2、FnOS搭建Gitea环境

2.1、安装Gitea应用

​ 在飞牛的应用商店搜索【Gitea】,直接下载安装,安装完成后点击【打开】

在这里插入图片描述

首次进入会显示数据库类型、数据库主机、用户名、用户密码、数据库名称等

数据库的类型选择:MySQL

数据库主机:127.17.0.1:3306 具体可以看下docker容器中MySQL的网络中查看

用户名:root

数据库用户密码:创建数据库时设置的密码

数据库名称:gitea 上面手动创建的数据库名称

在这里插入图片描述

至于SSH连接以及访问的URL可以根据需要设置成公网IP

在这里插入图片描述

跳转到登录页面时,如果没有账号可以先注册一个账号

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

J.Yang°

码字不易,来点鼓励~~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值