網站首頁 編程語言 正文
1、備份gogs倉庫,拷貝到新的服務器:
tar -zcvf gogs-repositories.tar.gz gogs-repositories
2、備份gogs數據庫
sudo mysqldump -h localhost -u gogs -P 3306 --no-tablespaces -p gogs> /home/tgubuntu/gogs.sql
3、新服務器安裝MySQL容器
# 創建docker網絡,使用bridge
sudo docker network create -d bridge --subnet '172.21.0.1/24' --gateway '172.21.0.1' gogs-bridge
# 安裝MySQL容器
docker run \
-d -it \
-p 8012:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
--privileged=true \
--network gogs-bridge \
--ip 172.21.0.2 \
--name mysql \
gogs_mysql
4、進入MySQL容器,創建賬戶,授權
sudo docker exec -it gogs_mysql bash
mysql -u root -p
use mysql;
# 創建gogs用戶
CREATE USER 'gogs'@'%' IDENTIFIED BY '123456789';
# CREATE USER 'gogs'@'172.21.0.1' IDENTIFIED BY '123456789';
# 授權gogs用戶可以操作gogs庫下所有表
GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'%' WITH GRANT OPTION;
# GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'172.21.0.1' WITH GRANT OPTION;
# 授權遠程三方工具連接MySQL
ALTER USER 'gogs'@'%' IDENTIFIED WITH mysql_native_password BY '123456789';
# ALTER USER 'gogs'@'172.21.0.1' IDENTIFIED WITH mysql_native_password BY '123456789';
# 刷新授權
FLUSH PRIVILEGES;
# 創建gogs庫
CREATE DATABASE `gogs` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
還原數據庫
use gogs
source /home/git/gogs.sql
5、創建git用戶運行Gogs
sudo adduser git
sudo su git
修改目錄的所屬權為git
sudo chown -R git:git /home/git/gogs
sudo chown -R git:git /home/git/gogs-repositories
6、創建Gogs容器
sudo docker run \
-itd \
-p 8013:22 \
-p 8014:3000 \
-v /home/git/gogs/data:/data/gogs/data \ # 掛載數據目錄
-v /home/git/gogs/conf:/data/gogs/conf \ # 掛載配置
-v /home/git/gogs/log:/data/gogs/log \ # 掛載日志目錄
-v /home/git/gogs-repositories:/data/git/gogs-repositories \ # 掛載代碼倉庫,重要,否則會出現倉庫500
--privileged=true \
--network gogs-bridge \
--ip 172.21.0.3 \
--name=gogs \
gogs/gogs
7、瀏覽器運行安裝程序,xxx.xxx.xx.xx:8014
8、備份的gogs-repositories文件上傳到新服務器,替換gogs-repositories
9、重啟gogs容器
sudo docker restart gogs
10、遷移后會出現不能push的現象,報錯pre-receive找不到,使用Gogs管理員賬號登錄Gogs,刷新hooks
管理面板->控制面板->管理員操作->重新同步所有倉庫的pre-receive、update和post-receive鉤子->執行
原文鏈接:https://blog.csdn.net/zhangli_0790/article/details/126499178
相關推薦
- 2022-07-19 Angular @Inject 注解的實際應用例子和工作原理淺析
- 2022-06-27 ABP引入Dapper框架的創建使用_實用技巧
- 2022-11-05 安裝ingress-nginx遇到的一些坑實戰記錄_云其它
- 2022-02-16 ios下使用動畫 transform: translate(xx%) 無效問題
- 2022-07-16 Spring MVC @Autowired和@Service注解
- 2022-09-11 windows?CMD生成文件夾樹狀圖tree命令的使用_DOS/BAT
- 2022-04-09 Webservice 服務請求參數xml 嵌套問題/CDATA嵌套
- 2022-05-15 Python?文本文件與csv文件的讀取與寫入_python
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支