当前位置: 首页 > news >正文

Linux部署Sonic前后端(详细版)(腾讯云)

1、安装Docker

sudo apt update
sudo apt install -y docker.io docker-compose
sudo systemctl start docker
sudo systemctl enable docker# 如果不想每次用 sudo,可以加权限
sudo usermod -aG docker $USER

更新Docker配置文件 

sudo tee /etc/docker/daemon.json > /dev/null <<EOF
{"registry-mirrors": ["https://docker-mirror.aigc2d.com"  ]
}
EOF# 重启docker
sudo systemctl daemon-reexec
sudo systemctl restart docker

2、安装 docker-compose

下载最新 docker-compose 二进制文件

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

3、安装MySQL

docker run -d --name mysql-sonic \-e MYSQL_ROOT_PASSWORD=123123 \-p 3306:3306 \mysql:5.7

进入MySQL进行配置, 创建对外账户

# 进入MySql
docker exec -it mysql-sonic mysql -u root -p
--输入密码# 示例:创建新用户
CREATE USER 'myuser'@'%' IDENTIFIED BY '123123';
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;# 创建数据库
CREATE DATABASE sonic
CHARACTER SET utf8
COLLATE utf8_general_ci;# 退出MySQL
\q

4、克隆或下载Sonic

4.1下载Sonic

下载本地后,解压上传到服务器

4.2Gitee下载(建议使用4.1)

Sonic生成公钥:

# 生成公钥,改成自己的邮箱
ssh-keygen -t rsa -C "xxx@xxx.com" 
# 一路按回车,生成默认的 ~/.ssh/id_rsa 和 ~/.ssh/id_rsa.pub#输出公钥内容
cat ~/.ssh/id_rsa.pub

 将公钥复制到Gitee账户设置中

验证Gitee是否连接成功

ssh -T git@gitee.com

 看到输出: 

Hi lyc0311(@lyc0311)! You've successfully authenticated, but GITEE.COM does not provide shell access.

 克隆Sonic

git clone https://gitee.com/sonic-cloud/sonic-server.git
cd sonic-server

5、配置.env 和拉取

# 进入.env 进行编辑
cp .env.example .env
nano .env
################################################
#         Do you need any help?                #
#     Visit https://sonic-cloud.cn/deploy      #
##################################################################
# Service Config #
##################
SONIC_SERVER_HOST=192.168.68.19  #电脑的本地IP
SONIC_SERVER_PORT=3000
SONIC_EUREKA_USERNAME=sonic
SONIC_EUREKA_PASSWORD=sonic
SONIC_EUREKA_PORT=8761################
# MySQL Config #
################
MYSQL_HOST=192.168.68.19  #电脑的本地IP
MYSQL_PORT=3306
MYSQL_DATABASE=sonic #MySQL数据库名称
MYSQL_USERNAME=myuser  #外部访问账户
MYSQL_PASSWORD=123123  #密码################
# User Config  #
################
SECRET_KEY=sonic
EXPIRE_DAY=14
PERMISSION_ENABLE=true
PERMISSION_SUPER_ADMIN=sonic
REGISTER_ENABLE=true
NORMAL_USER_ENABLE=true
LDAP_USER_ENABLE=false
LDAP_USER_ID=cn
LDAP_BASE_DN=ou=users
LDAP_BASE=ou=system
LDAP_USERNAME=uid=admin,ou=system
LDAP_PASSWORD=sonic
LDAP_URL=ldap://192.168.68.19:10389  电脑的本地IP
LDAP_OBJECT_CLASS=person
# 进入Sonic的文件
cd /home/ubuntu/sonic-server# 拉取
docker-compose up -d

6、运行情况

docker ps

7、其他

7.1重启网络 

docker-compose down
docker network prune
docker-compose up -d

 7.2查询容器运行情况

docker ps -a

7.3报错

大概率是server-controller报错,可以将日志输出 问一下deepseek。

#  sonic-server-v272_y_sonic-server-controller_1 是容器名称
docker logs --tail=200 sonic-server-v272_y_sonic-server-controller_1

以下是正常情况输出内容 

我遇到的问题是

创建一个新的数据库

# 登录root账户
mysql -u root -p
#输入密码# 创建数据库
CREATE DATABASE sonictest
CHARACTER SET utf8
COLLATE utf8_general_ci;

 修改.env 重启容器解决

相关文章:

  • 从java到vue3:第一天
  • 高质量车牌识别数据集推荐(10k张图像)| 支持目标检测任务
  • 基于数据同步canal的使用详解
  • Transformer 中 QKV 流向全解析(含注意力机制箭头图示)
  • Spring--IOC容器的一些扩展属性
  • C++之二叉搜索树及其实现
  • 【开源工具】一键解决使用代理后无法访问浏览器网页问题 - 基于PyQt5的智能代理开关工具开发全攻略
  • 17、Rocket MQ快速实战以及核⼼概念详解
  • Vscode自定义代码快捷方式
  • MySQL-日志+事务
  • 海拔案例分享-门店业绩管理小程序
  • uniapp+vue3做小程序,获取容器高度
  • 短期项目与长期目标如何同时兼顾
  • 华为云 Flexus+DeepSeek 征文|增值税发票智能提取小工具:基于大模型的自动化信息解析实践
  • 【面板数据】上市公司投资者保护指数(2010-2023年)
  • 【达梦数据库】忘记SYSDBA密码处理方法-已适配
  • 第十六届蓝桥杯C/C++程序设计研究生组国赛 国二
  • JavaScript中的10种排序算法:从入门到精通
  • 【源码+文档+调试讲解】基于web的运动健康小程序的设计与实现y196
  • VMware安装Ubuntu22.04详细教程
  • 宁波高新区建设局网站/东莞网站推广运营公司
  • 做网站 用什么语言好/南昌seo外包公司
  • 自己做网站开发如何找客户/宁波网站推广网站优化
  • finebi商业智能软件/seo霸屏
  • 泉州住房建设局网站/关键词推广效果分析
  • 范湖网站建设团队/网站建设技术解决方案