From a5eb7cdb1ef2ebecd24abff4794524bc2dcea912 Mon Sep 17 00:00:00 2001 From: hugofnm Date: Wed, 31 Jul 2024 18:30:13 +0200 Subject: [PATCH 1/5] Add GitLab --- gitlab/data/config/.gitkeep | 0 gitlab/data/data/.gitkeep | 0 gitlab/data/logs/.gitkeep | 0 gitlab/docker-compose.yml | 27 +++++++++++++++++++++++++++ gitlab/umbrel-app.yml | 35 +++++++++++++++++++++++++++++++++++ 5 files changed, 62 insertions(+) create mode 100644 gitlab/data/config/.gitkeep create mode 100644 gitlab/data/data/.gitkeep create mode 100644 gitlab/data/logs/.gitkeep create mode 100644 gitlab/docker-compose.yml create mode 100644 gitlab/umbrel-app.yml diff --git a/gitlab/data/config/.gitkeep b/gitlab/data/config/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/gitlab/data/data/.gitkeep b/gitlab/data/data/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/gitlab/data/logs/.gitkeep b/gitlab/data/logs/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/gitlab/docker-compose.yml b/gitlab/docker-compose.yml new file mode 100644 index 0000000000..abc9784860 --- /dev/null +++ b/gitlab/docker-compose.yml @@ -0,0 +1,27 @@ +version: "3.7" + +services: + gitlab: + image: zengxs/gitlab:17.2.1-ce.0@sha256:ac08a4dd997b6cd5d00d56c0027629de56ac80d9d30f9c4f75a73da73f5ff1b4 + container_name: gitlab + restart: unless-stopped + hostname: '${DEVICE_DOMAIN_NAME}:8929' + ulimits: + nofile: + soft: 4096 + hard: 8192 + environment: + GITLAB_OMNIBUS_CONFIG: | + # Add any other gitlab.rb configuration here, each on its own line + gitlab_rails['initial_root_password'] = '${APP_PASSWORD}' + gitlab_rails['gitlab_shell_ssh_port'] = 2424 + nginx['listen_port'] = 8929 + nginx['listen_https'] = false + ports: + - '8929:8929' + - '2424:22' + volumes: + - ${APP_DATA_DIR}/data/config:/etc/gitlab + - ${APP_DATA_DIR}/data/logs:/var/log/gitlab + - ${APP_DATA_DIR}/data/data:/var/opt/gitlab + shm_size: '256m' \ No newline at end of file diff --git a/gitlab/umbrel-app.yml b/gitlab/umbrel-app.yml new file mode 100644 index 0000000000..cb077948ed --- /dev/null +++ b/gitlab/umbrel-app.yml @@ -0,0 +1,35 @@ +manifestVersion: 1 +id: gitlab +name: GitLab +tagline: Software. Faster. +category: development +version: "17.2.1" +port: 8929 +description: >- + GitLab. Software. Faster. + + + Balance speed and security in a single platform. + + Automate software delivery, boost productivity, and secure your end-to-end software supply chain. + + + ⚠️ - This app is RAM-intensive (+6GB recommended) and can take 15-20 minutes to start after installation. + +developer: GitLab / zengxs +website: https://github.com/zengxs/gitlab-arm64 +submitter: hugofnm +submission: https://github.com/getumbrel/umbrel-apps/pull/1290 +repo: https://github.com/hugofnm/umbrel-appstore +support: https://github.com/hugofnm/umbrel-appstore/issues +gallery: + - 1.jpg + - 2.jpg + - 3.jpg +releaseNotes: > + +dependencies: [] +path: "" +deterministicPassword: true +defaultUsername: "root" +defaultPassword: "" \ No newline at end of file From eac1d7a431d5679b21878e4f554e1f5ceb209b4b Mon Sep 17 00:00:00 2001 From: hugofnm Date: Wed, 31 Jul 2024 20:29:22 +0200 Subject: [PATCH 2/5] Update category and PUID/PGID --- gitlab/docker-compose.yml | 3 +++ gitlab/umbrel-app.yml | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/gitlab/docker-compose.yml b/gitlab/docker-compose.yml index abc9784860..21e61155cf 100644 --- a/gitlab/docker-compose.yml +++ b/gitlab/docker-compose.yml @@ -1,6 +1,7 @@ version: "3.7" services: + gitlab: image: zengxs/gitlab:17.2.1-ce.0@sha256:ac08a4dd997b6cd5d00d56c0027629de56ac80d9d30f9c4f75a73da73f5ff1b4 container_name: gitlab @@ -11,6 +12,8 @@ services: soft: 4096 hard: 8192 environment: + PUID: 1000 + PGID: 1000 GITLAB_OMNIBUS_CONFIG: | # Add any other gitlab.rb configuration here, each on its own line gitlab_rails['initial_root_password'] = '${APP_PASSWORD}' diff --git a/gitlab/umbrel-app.yml b/gitlab/umbrel-app.yml index cb077948ed..81374b83a2 100644 --- a/gitlab/umbrel-app.yml +++ b/gitlab/umbrel-app.yml @@ -2,7 +2,7 @@ manifestVersion: 1 id: gitlab name: GitLab tagline: Software. Faster. -category: development +category: developer version: "17.2.1" port: 8929 description: >- From c3ed57cf54d3c700fc1fb7c32851cc1edc3ddac6 Mon Sep 17 00:00:00 2001 From: hugofnm Date: Thu, 1 Aug 2024 15:00:32 +0200 Subject: [PATCH 3/5] Changes based on suggestions - Add app_proxy - Change ports - Update umbrel_app.yml --- gitlab/docker-compose.yml | 8 ++++-- gitlab/umbrel-app.yml | 52 ++++++++++++++++++++++++++++++--------- 2 files changed, 46 insertions(+), 14 deletions(-) diff --git a/gitlab/docker-compose.yml b/gitlab/docker-compose.yml index 21e61155cf..846ef6146d 100644 --- a/gitlab/docker-compose.yml +++ b/gitlab/docker-compose.yml @@ -2,9 +2,14 @@ version: "3.7" services: + app_proxy: + environment: + APP_HOST: gitlab_gitlab_1 + APP_PORT: 8929 + PROXY_AUTH_ADD: "false" + gitlab: image: zengxs/gitlab:17.2.1-ce.0@sha256:ac08a4dd997b6cd5d00d56c0027629de56ac80d9d30f9c4f75a73da73f5ff1b4 - container_name: gitlab restart: unless-stopped hostname: '${DEVICE_DOMAIN_NAME}:8929' ulimits: @@ -21,7 +26,6 @@ services: nginx['listen_port'] = 8929 nginx['listen_https'] = false ports: - - '8929:8929' - '2424:22' volumes: - ${APP_DATA_DIR}/data/config:/etc/gitlab diff --git a/gitlab/umbrel-app.yml b/gitlab/umbrel-app.yml index 81374b83a2..f9cc65aad2 100644 --- a/gitlab/umbrel-app.yml +++ b/gitlab/umbrel-app.yml @@ -8,28 +8,56 @@ port: 8929 description: >- GitLab. Software. Faster. - - Balance speed and security in a single platform. - - Automate software delivery, boost productivity, and secure your end-to-end software supply chain. + GitLab is a comprehensive, web-based DevOps lifecycle tool that provides a robust platform for managing projects and repositories. It offers a wide range of features that cater to the entire software development lifecycle, including version control, CI/CD, code review, issue tracking, and more. All operations are performed in a secure, collaborative environment, ensuring your code and data are safe and accessible. ⚠️ - This app is RAM-intensive (+6GB recommended) and can take 15-20 minutes to start after installation. -developer: GitLab / zengxs -website: https://github.com/zengxs/gitlab-arm64 + + 📁 Repository Management + + GitLab provides a full-featured GUI for creating, managing, and organizing repositories. You can clone, fork, and browse repositories with ease. Advanced features like branch management, tagging, and merging are also available, enabling efficient version control and collaboration. + + + 🔄️ Continuous Integration/Continuous Deployment (CI/CD) + + Automate your software development process with GitLab's powerful CI/CD pipelines. Easily configure builds, tests, and deployments to streamline your workflow. GitLab CI/CD supports multiple languages and frameworks, ensuring compatibility with your existing tools and processes. + + + 🛡️ Security & Compliance + + Ensure the security and compliance of your projects with GitLab's built-in security features. Perform static and dynamic application security testing (SAST/DAST), dependency scanning, container scanning, and more. GitLab also offers audit logs, compliance management, and code quality checks to maintain high standards. + + + 👥 Collaboration & Code Review + + Enhance team collaboration with GitLab's integrated code review and discussion tools. Perform peer reviews, leave comments, and suggest changes directly within the platform. GitLab's merge request system simplifies the code review process, making it easy to propose, discuss, and approve changes. + + + 📈 Project Management + + Manage your projects efficiently with GitLab's project management features. Track issues, plan sprints, and visualize progress with boards, milestones, and burndown charts. GitLab also integrates with popular project management tools, allowing seamless synchronization of tasks and updates. + + + 🛠️ Other Features: + + Leverage GitLab's extensive set of tools to optimize your development process. Use the integrated wiki for documentation, manage packages with GitLab's built-in package registry, monitor performance with Prometheus and Grafana integration, and deploy applications with Kubernetes support. GitLab also offers robust APIs for extending functionality and integrating with other services. + + + GitLab is your all-in-one DevOps platform, empowering your team to build, deploy, and manage projects with ease and efficiency. + +developer: GitLab +website: https://about.gitlab.com submitter: hugofnm submission: https://github.com/getumbrel/umbrel-apps/pull/1290 -repo: https://github.com/hugofnm/umbrel-appstore -support: https://github.com/hugofnm/umbrel-appstore/issues +repo: https://github.com/zengxs/gitlab-arm64 +support: https://github.com/zengxs/gitlab-arm64/issues gallery: - 1.jpg - 2.jpg - 3.jpg -releaseNotes: > - +releaseNotes: "" dependencies: [] path: "" deterministicPassword: true -defaultUsername: "root" -defaultPassword: "" \ No newline at end of file +defaultUsername: "root" \ No newline at end of file From 6b614cfc077771828fa551eb0ab22c3ea5bc89bd Mon Sep 17 00:00:00 2001 From: nmfretz Date: Wed, 18 Sep 2024 11:31:23 +1000 Subject: [PATCH 4/5] Tweak description --- gitlab/umbrel-app.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gitlab/umbrel-app.yml b/gitlab/umbrel-app.yml index f9cc65aad2..d3dc5a26a2 100644 --- a/gitlab/umbrel-app.yml +++ b/gitlab/umbrel-app.yml @@ -6,12 +6,10 @@ category: developer version: "17.2.1" port: 8929 description: >- - GitLab. Software. Faster. - - GitLab is a comprehensive, web-based DevOps lifecycle tool that provides a robust platform for managing projects and repositories. It offers a wide range of features that cater to the entire software development lifecycle, including version control, CI/CD, code review, issue tracking, and more. All operations are performed in a secure, collaborative environment, ensuring your code and data are safe and accessible. + ⚠️ This app is RAM-intensive (+6GB recommended) and can take 15-20 minutes to start after installation on low-powered devices. - ⚠️ - This app is RAM-intensive (+6GB recommended) and can take 15-20 minutes to start after installation. + GitLab is a comprehensive, web-based DevOps lifecycle tool that provides a robust platform for managing projects and repositories. It offers a wide range of features that cater to the entire software development lifecycle, including version control, CI/CD, code review, issue tracking, and more. All operations are performed in a secure, collaborative environment, ensuring your code and data are safe and accessible. 📁 Repository Management From e872f19c7a5017e2199ef2dbbfb8169ee1ff8ba4 Mon Sep 17 00:00:00 2001 From: nmfretz Date: Wed, 18 Sep 2024 11:32:47 +1000 Subject: [PATCH 5/5] Change restart policy --- gitlab/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gitlab/docker-compose.yml b/gitlab/docker-compose.yml index 846ef6146d..ef865b6b23 100644 --- a/gitlab/docker-compose.yml +++ b/gitlab/docker-compose.yml @@ -10,7 +10,7 @@ services: gitlab: image: zengxs/gitlab:17.2.1-ce.0@sha256:ac08a4dd997b6cd5d00d56c0027629de56ac80d9d30f9c4f75a73da73f5ff1b4 - restart: unless-stopped + restart: on-failure hostname: '${DEVICE_DOMAIN_NAME}:8929' ulimits: nofile: