前言
-
gogs简介
- 为什么使用gogs
- gogs轻量
- gogs自带git update
- gogs操作简洁
基于 docker 快速搭建
- 准备数据库
- 如果之前没有数据库,可以使用docker快速部署 mysql 或mariadb
mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/conf docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
- 配置数据库
MariaDB [(none)]> create database gogs default character set utf8; MariaDB [(none)]> grant all on gogs.* to 'gogs'@'%' identified by 'gogspass';
- 如果已经有docker搭建数据库,可以使用下面的方法通过docker自有的网络互通,当然简单的方法就是通过访问外网的端口使用数据库
docker network ls docker network connect dockeronlyofficenextcloudmysql_onlyoffice gogs
docker run -itd --name=gogs -p 10022:22 -p 10080:3000 -e TZ=Asia/Shanghai -v /volume1/docker/gogs:/data gogs/gogs
gogs配置
- docker启动后基于web配置
- http://IP:10080/install
gitlab vs gogs 资源消耗
- gitlab
-
- gogs
-
配置文件查看
cat gogs/conf/app.ini
APP_NAME = Aiker Edward RUN_USER = git RUN_MODE = prod [database] DB_TYPE = mysql HOST = mariadb:3306 NAME = gogs USER = gogs PASSWD = gogspass SSL_MODE = disable PATH = data/gogs.db [repository] ROOT = /data/git/gogs-repositories [server] DOMAIN = gogs.abc.com HTTP_PORT = 3000 ROOT_URL = http://gogs.abc.com/ DISABLE_SSH = false SSH_PORT = 10022 START_SSH_SERVER = false OFFLINE_MODE = false [mailer] ENABLED = false [service] REGISTER_EMAIL_CONFIRM = false ENABLE_NOTIFY_MAIL = false DISABLE_REGISTRATION = false ENABLE_CAPTCHA = true REQUIRE_SIGNIN_VIEW = true SHOW_REGISTRATION_BUTTON = false [picture] DISABLE_GRAVATAR = false ENABLE_FEDERATED_AVATAR = true [session] PROVIDER = file [log] MODE = file LEVEL = Info ROOT_PATH = /data/log [security] INSTALL_LOCK = true # true关闭web配置向导,false打开web配置向导 SECRET_KEY = NbSgKURfSaFxcdxW
配置基于nginx ssl的反向代理
server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name gogs.abc.com; ssl_certificate /usr/syno/etc/certificate/ReverseProxy/3a2b92d0-ea43-4c88-a7a0-e8be86104850/fullchain.pem; ssl_certificate_key /usr/syno/etc/certificate/ReverseProxy/3a2b92d0-ea43-4c88-a7a0-e8be86104850/privkey.pem; add_header Strict-Transport-Security "max-age=15768000; includeSubdomains; preload" always; location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_intercept_errors on; proxy_http_version 1.1; proxy_pass http://localhost:10080; } }
这样就可以通过https+域名访问了。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- linux 部署golang 项目(直接部署和基于nginx部署)
- 部署策略对比:蓝绿部署、金丝雀发布及其他
- 使用Docker容器化部署实践之Django应用部署(一)
- 【前端打包部署】谈一谈我在SPA项目打包=>部署的处理
- 「实战篇」开源项目docker化运维部署-后端java部署(七)
- Kubernetes 中的渐进式交付:蓝绿部署和金丝雀部署
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
JS 压缩/解压工具
在线压缩/解压 JS 代码
随机密码生成器
多种字符组合密码