问题标签 [gitea]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1131 浏览

docker - jwilder/nginx-proxy 和 jrcs/letsencrypt-nginx-proxy-companion 后面的 docker 中的 gitea

我被困在使用 jrcs/letsencrypt-nginx-proxy-companion 的反向代理 jwilder/nginx-proxy 后面部署 docker image gitea/gitea:1 以进行自动证书更新。gitea 正在运行,我可以通过端口 3000 的 http 地址连接。代理也在运行,因为我有多个应用程序和服务,例如 sonarqube 运行良好。

这是我的 docker-compose.yml:

当我调用https://gitea.myhost.de时,结果是

502 错误网关 (nginx/1.17.6)

这是日志条目:

这是 nginx/conf/default.conf 中的相关条目:

也许这是一个问题,我按照https://docs.gitea.io/en-us/backup-and-restore/中的建议为这个容器使用了 gitea 备份

我该怎么做才能让它运行?我已阅读此https://docs.gitea.io/en-us/reverse-proxies/但也许我错过了一些东西。要点是让letsencrypt-nginx-proxy-companion自动管理证书。

非常感谢任何帮助和提示。

0 投票
1 回答
3860 浏览

bash - 使用 ssh 推送到 gitea 时询问密码

我刚刚在 Ubuntu 服务器上设置了自己的 gitea 服务(服务器使用 user 运行gitea)。已完成以下步骤:

  1. id_rsa_gitea在我的 windows pc 上生成 ssh 密钥,并存储在 C:\Users<user_name>\.ssh ,即id_rsa_gitea.pub
  2. 在我的gitea账户设置页面复制并设置公钥

目录中有我的 GitHub 帐户的现有密钥文件,即id_rsaid_rsa.pub. 我修改了config同一目录中的文件

推送到 GitHub 工作正常。但是当我尝试推送到 gitea 时,它得到了

我已经在 git bash 控制台中测试了 ssh 连接ssh -v gitea@192.168.200.101,并得到了

我已经尝试了多种变体,但它们似乎都不起作用。有任何想法吗?

更新:使用 http 推送可以正常工作。我切换回 ssh 并尝试再次推送,现在我得到:

在此推送期间,ubuntu 服务器的 sshd 日志为:

更新 v2:

问题是由我用来运行 gitea 二进制文件的 Ubuntu 用户引起的。该用户没有外壳。我删除用户并配置一个普通用户。一切正常。谢谢大家!!

0 投票
1 回答
463 浏览

git - 如何在不克隆它所连接的存储库的情况下触发 Jenkins 构建?

我正在使用 config.xml 文件作为模板动态创建 jenkins 作业。基本上我想要实现的是,当有人推送到存储库时,这将触发 jenkins 中的工作。然后,该作业应该拉取一个 docker 映像,创建一个容器并克隆它挂接到其中的存储库。这个想法是为了避免将任何恶意代码下载到我们的服务器。相反,它将被下载到 docker 容器中,在容器中运行可执行文件,然后容器将被删除。

问题是每当有人推送到 git 存储库时,jenkins 作业都会自动克隆存储库。有没有办法保持对回购的钩子但阻止它克隆?

我们没有使用 jenkins 文件,因为它必须在存储库中,并且任何人都可以修改它,这就是我们从 config.xml 模板创建 jenkins 作业的原因。

我读到 jenkinsfile 中存在选项 skipdefaultcheckout 以停止克隆 repo?是否可以在 config.xml 中进行设置?这是解决我正在尝试做的事情的正确选择吗?

0 投票
0 回答
255 浏览

powershell - 在没有pandoc的windows下将Markdown-Docu转换为docx?

我知道并喜欢 pandoc,但我的客户希望我在使用 pandoc 的情况下定期将 Markdown 文档(保存在 git 存储库中)转换为 MS Word 文档。到目前为止,我想出的两个替代方案是:

  1. 使用giteea生成的 HTML 预览,将它们分别保存为 HTML 或 PDF,然后将这些文件重新导入 MS Word。
  2. 使用 Visual Studio Code 的降价功能,将每一页打印为 PDF,然后将其重新导入 MS Word。

这两种方法都有相同的缺点:它们不容易编写脚本,需要 PDF-to-Word 插件,并且之后需要手动清理。

我的问题:我可以使用 Visual Studio Code 的一些神奇的 powershell 功能或高级命令行选项吗?

PS:我知道我的请求听起来很奇怪,但我能做什么:业务要求 docx 文件,但另一方面,IT 方面坚持使用 Markdown(有充分的理由)。

参考

0 投票
1 回答
409 浏览

docker - 为 gitea 设置 docker 容器中的卷

我正在尝试设置一个 gitea 容器,并在检查官方文档时,对于卷部分,定义了以下内容:

我知道卷部分用于在 docker-compose 中配置数据库,但我找不到为什么要在此处完成此特定配置。有人可以向我解释一下我们在卷部分中添加的行可以实现什么吗?

更具体地说,我们通过什么来实现./gitea:/data, /etc/timezone:/etc/timezone:ro以及/etc/localtime:/etc/localtime:ro为什么需要这样做?

谢谢。

0 投票
1 回答
48 浏览

git - 阻止服务器上的用户查看 git 存储库中的任何内容

我安装了 gitea git 服务器。如何防止在 linux 服务器上执行 cli 中的命令:git push、git pull、git clone 和其他允许用户查看存储库及其内容(存储库分支等)的命令?

因此,我想禁止服务器上的用户通过 Linux 服务器查看 git 中的任何内容(然后他们将只能通过 gitea 的 Web 界面查看存储库)

0 投票
1 回答
160 浏览

git - 如何让 Cognito UserPool 用户可以访问 AWS CodeCommit 存储库?

尝试让 Cognito UserPool 用户可以访问 AWS CodeCommit,如下所述

  1. 创建了一个IAM角色AWSCodeCommitPowerUser
  2. 与用户池建立信任关系,
  3. 安装git-remote-codecommit配置了配置文件
  4. 接下来,尝试以下任何操作:
  • Set source_profile = default,其中default凭证配置文件包含一个 IAM 用户(错误的方式,但只是为了检查)。
    执行git clone codecommit://CodeAccessProfile@repo抛出:

An error occurred (AccessDenied) when calling the AssumeRole operation: User: arn:aws:iam::123456789:user/name.surname is not authorized to perform: sts:AssumeRole on resource...

  • 在 Web 应用程序中以 Cognito 用户池用户身份登录,从响应中
    获取Cognito IdToken
    , 并使用它调用假设角色与网络身份。得到:

An error occurred (InvalidIdentityToken) when calling the AssumeRoleWithWebIdentity operation: Provided Token is not a Login With Amazon token

我可能需要在配置文件中进行设置web_identity_token_file=token-file.txt,但是从哪里获取与 Cognito 用户关联的令牌?

我想知道如何使 git-remote-codecommit 为 Cognito UserPool 用户工作,避免使用 STS 令牌带来这种痛苦,只需正确配置配置文件?

UPD:
汇报

在基于 AWS 的 POC 上花了几周时间后,我们决定在运行在 k8 中的轻量级且完全可控的服务(例如Gitea )上实施所有管道

0 投票
0 回答
246 浏览

git - git push 无法在 docker 上使用 Gitea 和 traefik 和 basicauth

我正在 docker 上设置 Gitea 以进行版本跟踪。我使用 traefik 作为反向代理在 docker (docker-compose) 上运行它。我已经使用 basicauth 设置了 traefic,因为我不希望任何人都可以访问 Web 界面。我不知道我是否可以让 gitea 仅对那些应该访问的人(例如开发团队)开放,所以我认为这是一个不错的选择 atm。

我可以很好地克隆,但在这里我必须提供 basicauth 凭据而不是我的 gitea 帐户的用户凭据。当我要 git push 时,它会询问我的登录详细信息。但它无法识别我提供的登录详细信息,无论它们是 basicauth 还是 gitea 帐户详细信息。(虽然它是有道理的,但它将是基本身份凭证)。

下面是回复

我想指出,当 basicauth 不存在/“关闭”时,克隆和推送都有效

编辑 v1:

使它无法注册,但这并不是我真正想要的。

真挚地,

0 投票
2 回答
2163 浏览

docker - SSH无法在带有traefik的docker上使用Gitea

我已经在 docker (docker-compose) 上安装了 gitea,并使用 traefik (v2.3) 作为反向代理。我正在尝试设置 ssh,但无论是 SSH 进入还是(主要)执行 git clone 和推送都失败了。

我明白了

我尝试在 docker-compose 文件中为 traefik 容器指定端口

在 docker-compose for gitea 我有以下标签:

我对 http 和 https 有类似的设置,http 被重定向到 https。

入口点在 traefik.yml 中定义为":22"

然而这不起作用。我认为信号流会是这样的:

我已将公钥上传到

我通过此设置获得的 ssh 连接请求响应是:

当我尝试访问 git clone 时:

0 投票
0 回答
666 浏览

git - 从 github 镜像一个仓库并添加一个开发分支

我对 git 不是很熟悉,我的问题可能很愚蠢。我想在我的 gitea 服务器上从 github 镜像一个存储库,然后向这个存储库添加一个额外的分支。目标是:

如果我是正确的,分叉是给定时刻的回购副本。应用到原始存储库的以下提交不会更新分叉。

在 gitea 中,我可以镜像一个 repo。它将自动拉取应用于原始仓库的新提交。但是,它不允许我将额外的分支推送到镜像仓库。

我希望分支 b1 和 b2 在我在分支 b3 上工作时不断更新。有时,我会将 b1 或 b2 合并到 b3 中以添加已应用的新更新。

我怎样才能做到这一点?

创建镜像仓库:

  1. 新迁移

步骤1

  1. 检查镜盒

第2步

  1. 完毕。回购现在是一面镜子。它会自动更新。