Docker Compose搭建Git仓库私服上传微服务

安装 Docker 和 Docker Compose

确保系统已安装 Docker 和 Docker Compose。可通过以下命令检查版本:

bash 复制代码
docker --version
docker-compose --version

若未安装,参考官方文档安装对应版本。

创建 docker-compose.yml 文件

新建目录并创建文件,内容如下:

yaml 复制代码
version: '3'

services:
  gogs:
    image: gogs/gogs:latest
    container_name: gogs
    ports:
      - "3000:3000"
      - "2222:22"
    volumes:
      - ./data:/data
    restart: unless-stopped
  • ports 将容器 3000(Web)和 22(SSH)映射到宿主机。
  • volumes 持久化数据到本地 ./data 目录。

启动 Gogs 服务

运行以下命令启动容器:

bash 复制代码
docker-compose up -d

-d 表示后台运行。

访问并初始化 Gogs

浏览器访问 http://localhost:3000,进入安装页面:

  • 设置数据库类型(SQLite3 或 MySQL/PostgreSQL,需提前配置)。
  • 配置应用 URL、仓库路径等。
  • 创建管理员账户。



验证 SSH 访问

测试 SSH 克隆是否正常:

bash 复制代码
git clone ssh://git@localhost:2222/username/repo.git

确保宿主机 2222 端口未被占用。

数据备份

定期备份 ./data 目录,或通过 Docker 卷管理工具导出数据。

更新 Gogs 版本

停止服务后拉取最新镜像并重启:

bash 复制代码
docker-compose down
docker-compose pull
docker-compose up -d

常见问题

  • 端口冲突 :修改 docker-compose.yml 中的宿主机端口(如 3001:3000)。
  • 权限问题 :确保 ./data 目录可写(chmod -R 777 ./data)。
  • 数据库配置:如需外部数据库,在安装页面填写对应连接信息。

通过以上步骤,可快速部署并维护 Gogs Git 服务。

相关推荐
KaiwuDB12 小时前
KaiwuDB 分布式集群扩缩容,从原理到完整操作踩坑总结
运维·数据库·分布式
LannyChung12 小时前
PowerShell 下 git log 中文乱码的完整排查与解决
windows·git
泡海椒12 小时前
深度解析JQuick-SQL AST到逻辑计划转换机制|分布式SQL原理
数据库·分布式·sql
import_random13 小时前
[git]本地main,origin/main,远程main(关系2)
git
golang学习记13 小时前
Zed Git重大更新:目录级对比支持分栏Diff
git·vscode·zed
闲云野鹤在人间13 小时前
Kubernetes Service 与 kube-proxy 详解
云原生·容器·kubernetes
阿里云云原生14 小时前
LiteLLM 半年两度被投毒,大模型的“钥匙串”该放在哪里?
微服务·serverless
说实话起个名字真难啊15 小时前
实战docker部署dify及注意点
运维·docker·容器
泡海椒15 小时前
深度解析JQuick-SQL SQL解析与AST生成机制|分布式SQL原理
数据库·分布式·sql
闲云自留地15 小时前
K8s Service 全解:服务发现、四种类型、会话保持、金丝雀发布一篇通
容器·kubernetes·服务发现