当我们https://github.com/{user}/{repo}/graphs/traffic在GitHub中使用此URL时,将显示我们的repo访客的图表.还有一个表格显示推荐网站.
私有仓库的GitLab Page是否存在此功能?或者是否有任何解决方法可以看到访问者数量而无需添加任何第三方访问者计数器Web插件?
我们有一个本地部署的 Gitlab 实例,当时我们无法负担一个 GitLab Runner 来运行 CI/CD 管道。
是否可以在没有 CI/CD 的情况下使用 GitLab Pages?例如,是否可以手动准备 HTML 内容,将其放在public根目录中的文件夹中并使其可访问?
我不知道如何在没有通配符域的自托管 Gitlab 实例上设置 Gitlab 页面。例如,我有1台服务器,有3个公共IP地址和域名:
/etc/gitlab/gitlab.rb然后我像这样设置 Omnibus 配置:
external_url 'https://git.example.com'
nginx['enable'] = true
nginx['listen_addresses'] = ['10.8.0.10']
registry_external_url 'https://registry.example.com'
registry_nginx['enable'] = true
registry_nginx['listen_addresses'] = ['10.8.0.11']
registry_nginx['ssl_certificate'] = "/etc/gitlab/ssl/git.example.com.crt"
registry_nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/git.example.com.key"
pages_external_url 'https://pages.example.com'
pages_nginx['enable'] = false
gitlab_pages['enable'] = true
gitlab_pages['cert'] = "/etc/gitlab/ssl/pages.example.com.crt"
gitlab_pages['cert_key'] = "/etc/gitlab/ssl/pages.example.com.key"
gitlab_pages['external_http'] = ['10.8.0.12:80']
gitlab_pages['external_https'] = ['10.8.0.12:443']
Run Code Online (Sandbox Code Playgroud)
例如,我有一个位于https://git.example.com/somegroupname/project的项目。我可以通过https://registry.example.com/somegroupname/project访问该项目的容器注册表,并使用命令拉取 Docker 映像docker pull registry.example.com/somegroupname/project。
我知道 GitLab Pages …
我有一个 Gitlab Pages 项目站点,托管为my.gitlab.io/old.
我将项目存储库重命名为new. 当我再次推送时,它仍然发布到my.gitlab.io/old.
我该如何将其更改为my.gitlab.io/new?
我有一个像这样的 Gitlab 项目(.gitlab-ci.yml):
# Sub-jobs listed as comments
stages:
- check-in-tests
# shellcheck
# pylint
# unit-tests
- several-other-things
# foo
# bar
# baz
- release
# release
# Run some shell code static tests and generate logs/badges
shellcheck:
stage: check-in-tests
script:
- bash run_shellcheck.sh
artifacts:
paths:
- logs/shellcheck.log
- logs/shellcheck.svg
# Run some python code static tests and generate logs/badges
pylint:
stage: check-in-tests
script:
- bash run_pylint.sh
artifacts:
paths:
- logs/pylint.log
- logs/pylint.svg
# <snip>
Run Code Online (Sandbox Code Playgroud)
在我的项目页面上,我想将签入测试期间生成的 .svg 文件呈现为 …
这个答案通过@joki到前面的问题表明,它可以通过给浏览的文物公开网址部署在GitLab回购来动态环境中的每个活跃的分支。
用mkdocs 材料项目尝试这个,我发现了两个问题。
首先,如果 GitLab 存储库在一个组或一个子组中,则.gitlab-ci.yml文件中的 URL需要更像这样:
environment:
name: review/$CI_COMMIT_REF_NAME
url: "$CI_PAGES_URL/-/jobs/$CI_JOB_ID/artifacts/public/index.html"
auto_stop_in: 1 week
variables:
PUBLIC_URL: "$CI_PAGES_URL/-/jobs/$CI_JOB_ID/artifacts/public/"
Run Code Online (Sandbox Code Playgroud)
其次,网站内的相关链接不好用,导致404错误很多,样式文件等东西丢失。也许上面的网址是不正确的,或者也许是site_url在mkdocs.yml需要改变的东西,如:
site_url: !!python/object/apply:os.getenv ["CI_ENVIRONMENT_URL"]
Run Code Online (Sandbox Code Playgroud)
然而,这些都不适合我。
可以在此处找到具有非常小的部署和审查应用程序的最小 MR 。
有没有人有 mkdocs 评论应用程序的工作配方?
我将使用Gitlab页面。看来Gitlab Pages无法与React Router一起使用。我得到一个空白页。如何在React Router中使用gitlab Pages?我怎么解决这个问题?
/src/App.js
import React from 'react';
import { Route } from 'react-router-dom';
import HomePage from './components/pages/HomePage';
import LoginPage from './components/pages/LoginPage';
const App = () => (
<div>
<Route path="/" exact component={HomePage} />
<Route path="/login" exact component={LoginPage} />
</div>
);
export default App;
Run Code Online (Sandbox Code Playgroud)
src / index.js
import React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter } from 'react-router-dom';
import App from './App';
import registerServiceWorker from './registerServiceWorker';
ReactDOM.render(
<BrowserRouter>
<App />
</BrowserRouter>,
document.getElementById('root')
);
registerServiceWorker();
Run Code Online (Sandbox Code Playgroud) 我正在gitlab pages用于部署作业的输出。我有 3 个不同的工作来产生html输出。一项工作总是在运行。其他 2 个作业是可选的,因此它们是手动运行的。
pages在这种情况下,如何将手动作业的输出部署到其中?可以pages在 中定义两个不同的工作gitlab ci吗?
我有一个在 GitLab Pages 上托管的普通 JavaScript 应用程序。最近,我一直在进行更改和错误修复,这些更改和错误修复已经破坏了网站,直到推送更改后我才注意到。
为了减少用户遇到错误的机会,我想在单独的文件夹中发布两个站点:
public/:master分支; 官方网站public/staging/:staging分支; 每晚构建我希望它们对应于两个不同的分支:master和staging
阅读GitLab CI for GitLab Pages 后,听起来这甚至是不可能的。我希望我读错了。
default:
image: node:latest
test:
stage: test
script:
- npm install
- node test.js
only:
- staging
- master
staging:
stage: deploy
environment: staging
script:
- mkdir -p public/staging
- cp -r www public/staging
artifacts:
paths:
- public
only:
- staging
pages:
stage: deploy
environment: production
script:
- mkdir -p public
- …Run Code Online (Sandbox Code Playgroud) 每次我在 gitlab 上提交标签时,我愿意部署一个新版本的文档。我使用 mike 进行 mkdocs 版本控制。
我希望版本控制直接在远程存储库上处理,而不是在本地处理。
在本地,我执行更改,但每次发送新标签时,我希望在我的 gitlab 页面上获取新添加的文档版本
我如何将我的 GoDaddy 域https://baharalidurrani.me与我的 GitLab 页面https://baharalidurrani.gitlab.io/domain连接起来 还指导我了解裸域和 www 域。请向我解释以下 DNS 相关术语:NAMESERVER、A、CNAME、MX、TXT、SRV、AAAA、CAA。我正在使用 ReactJS 开发我的网站,并且由于 CI 功能,我喜欢 GitLab。谢谢
我尝试使用我的 React 应用程序设置 gitlab 页面,但是,我无法这样做,因为它没有生成任何可供我访问的 url。我已经设置了 gitlab-ci.yml。
> image: node:latest
pages:
script:
- npm install
- npm run build
- mkdir public2
- mv public/* public2
artifacts:
paths:
- public2
only:
- master
stage: deploy
Run Code Online (Sandbox Code Playgroud) 我正在创建一个简单的Java项目,使用Gradle该项目可以生成测试报告(即BDD Cucumber,JUnit等)。该项目将部署到Gitlab该项目作为Gitlab CI流程一部分的位置。
我的JUnit报告是在build/reports/tests/test/相对于项目路径的文件夹中生成的(一个index.html和一些CSS文件等)。
即使测试用例失败,我如何配置我也.gitlab-ci.yml可以将内容发布build/reports/tests/test/到Gitlab页面?
这就是我的内容.gitlab-ci.yml:(我的仓库可以在这里找到)
版本1:不向页面发布任何内容
image: java:8-jdk
stages:
- test
before_script:
- export GRADLE_USER_HOME=`pwd`/.gradle
test:
stage: test
script:
- mkdir public
- ./gradlew test
artifacts:
paths:
- build/reports/tests/test/
only:
- master
after_script:
- mv build/reports/tests/test/* public
Run Code Online (Sandbox Code Playgroud)
版本2:失败后就不执行该deploy阶段test。
image: java:8-jdk
stages:
- test
- deploy
before_script:
- export GRADLE_USER_HOME=`pwd`/.gradle
test:
stage: test …Run Code Online (Sandbox Code Playgroud) gitlab-pages ×13
gitlab ×11
gitlab-ci ×6
mkdocs ×2
dns ×1
doc ×1
gitlab-api ×1
gradle ×1
hosting ×1
javascript ×1
junit ×1
react-router ×1
reactjs ×1
self-hosting ×1