部署轻量级Gitea替代GitLab进行版本控制(二)

2024-04-20 07:12

本文主要是介绍部署轻量级Gitea替代GitLab进行版本控制(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

version: '3.9'
# 创建自定义网络
networks:gitea:name: giteadriver: bridgeservices:## 数据库服务db:image: postgres:latestcontainer_name: gitea_dbrestart: alwaysnetworks:- gitea # 加入到gitea网络ports:- 3003:5432environment:- POSTGRES_USER=gitea # PGSQL默认用户- POSTGRES_PASSWORD=gitea # PGSQL默认密码- POSTGRES_DB=gitea # PGSQL默认数据库volumes:- /volumes/gitea/db:/var/lib/postgresql/data#gitea服务server:image: gitea/gitea:latestcontainer_name: gitea_serverrestart: alwaysnetworks:- gitea # 加入到gitea网络ports:- '3000:3000' # HTTP服务端口- '3001:22' # SSH服务器端口environment:- USER_UID=1000 # 运行容器使用的 UID  UID和GID是用于匿名数据卷挂载,- USER_GID=1000 # 运行容器使用的 GID- APP_NAME=gitea- PROTOCOL=http # 服务使用的访问协议- HTTP_PORT=3000 # HTTP 侦听端口 默认为3000- SSH_PORT=22 # 克隆 URL 中显示的 SSH 端口- DOMAIN=82.157.55.94:3000 # UI显示的 HTTP克隆URL- LANDING_PAGE=explore- ROOT_URL=http://82.157.55.94:3000 # 服务器的对外 URL- DB_TYPE=postgres # 数据库类型- DB_HOST=db # 数据库连接地址, 使用network形式连接, serverName或者 containerName- DB_NAME=gitea # 数据库名称- DB_USER=gitea # 数据库连接用户- DB_PASSWD=gitea # 数据库连接密码- DISABLE_REGISTRATION=true # 禁用用户注册,启用后只允许管理员添加用户- SHOW_REGISTRATION_BUTTON=false # 是否显示注册按钮- REQUIRE_SIGNIN_VIEW=true # 是否所有页面都必须登录后才可访问volumes:- /volumes/gitea/server/data:/data- /volumes/gitea/server/config:/etc/config- /volumes/gitea/server/timezone:/etc/timezone:ro- /volumes/gitea/server/localtime:/etc/localtime:rodepends_on:- db

Dockerfile 配置文件中部署了两个容器: 一个是 Postgres(数据库)服务,一个是 Gitea服务。

使用 networks 添加了一个自定义网络。 两个容器都加入这个自定义网络中,使用自定义网络进行通讯。

PS:  Docker 中, 提供了一个  network 模块。同属于一个  network 下的容器可以使用  容器名称服务名称 直接通讯。

Postgres 服务中通过环境变量设置了默认的数据库、用户名称和用户密码信息。

Gitea 服务中通过环境变量设置了 运行容器的 UIDGID,HTTP 监听端口、UI 上显示的克隆 URL。连接数据库、禁用注册等信息,至于还有其它参数,可以自行查询

Gitea 端口号映射了两个 30003001,分别是 HTTP访问和 SSH 访问,不过现在基本上都使用 HTTP ,SSH` 可以使用参数禁用

在配置文件中有一个 depends_on 属性,这个属性是控制部署顺序的。意思是 Gitea 部署依赖 postgres 部署

使用这个配置安装成功后,会成功部署两个容器和创建一个 network,成功后可以进行访问Gitea

安全验证 - 知乎

这篇关于部署轻量级Gitea替代GitLab进行版本控制(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/919605

相关文章

python进行while遍历的常见错误解析

《python进行while遍历的常见错误解析》在Python中选择合适的遍历方式需要综合考虑可读性、性能和具体需求,本文就来和大家讲解一下python中while遍历常见错误以及所有遍历方法的优缺点... 目录一、超出数组范围问题分析错误复现解决方法关键区别二、continue使用问题分析正确写法关键点三

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

Java进行日期解析与格式化的实现代码

《Java进行日期解析与格式化的实现代码》使用Java搭配ApacheCommonsLang3和Natty库,可以实现灵活高效的日期解析与格式化,本文将通过相关示例为大家讲讲具体的实践操作,需要的可以... 目录一、背景二、依赖介绍1. Apache Commons Lang32. Natty三、核心实现代

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Pandas进行周期与时间戳转换的方法

《Pandas进行周期与时间戳转换的方法》本教程将深入讲解如何在pandas中使用to_period()和to_timestamp()方法,完成时间戳与周期之间的转换,并结合实际应用场景展示这些方法的... 目录to_period() 时间戳转周期基本操作应用示例to_timestamp() 周期转时间戳基

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Java使用Stream流的Lambda语法进行List转Map的操作方式

《Java使用Stream流的Lambda语法进行List转Map的操作方式》:本文主要介绍Java使用Stream流的Lambda语法进行List转Map的操作方式,具有很好的参考价值,希望对大... 目录背景Stream流的Lambda语法应用实例1、定义要操作的UserDto2、ListChina编程转成M