diff --git a/Template/Stack/gitlab.yml b/Template/Stack/gitlab.yml new file mode 100644 index 0000000..63ade73 --- /dev/null +++ b/Template/Stack/gitlab.yml @@ -0,0 +1,23 @@ +--- +version: "3.6" +services: + gitlab: + image: gitlab/gitlab-ce:latest + hostname: ${DOMAIN} + ports: + - "${GITLABSSHPORT}:22" + - "${GITLABPORT80}:80" + - "${GITLABPORT443}:443" + volumes: + - "${APPDATA}/gitlab/data:/var/opt/gitlab" + - "${APPDATA}/gitlab/logs:/var/log/gitlab" + - "${APPDATA}/gitlab/config:/etc/gitlab" + environment: + GITLAB_OMNIBUS_CONFIG: | + external_url '${EXTERNALURL}' + gitlab_rails['gitlab_shell_ssh_port'] = ${GITLABSSHPORT} + gitlab-runner: + image: gitlab/gitlab-runner:alpine + volumes: + - "${APPDATA}/gitlab/config-runner:/etc/gitlab-runner" + - "/var/run/docker.sock:/var/run/docker.sock" diff --git a/Template/test.json b/Template/test.json index a0c6e1d..ee6cfa3 100644 --- a/Template/test.json +++ b/Template/test.json @@ -436,6 +436,48 @@ }, "title": "Organizr v2", "type": 3 + }, + { + "categories": [ + "Other", + "Tools" + ], + "description": "One application with endless possibilities. Organizations rely on GitLab’s source code management, CI/CD, security, and more to deliver software rapidly.", + "env": [{ + "default": "22", + "label": "SSH port for gitlab", + "name": "GITLABSSHPORT" + }, + { + "default": "80", + "label": "http port", + "name": "GITLABPORT80" + }, + { + "default": "443", + "label": "https port", + "name": "GITLABPORT443" + }, + { + "label": "Domain or subdomain", + "name": "DOMAIN" + }, + { + "label": "External url", + "name": "EXTERNALURL", + "description": "https://gitlab.yourdomain.com" + } + ], + "logo": "https://raw.githubusercontent.com/Qballjos/portainer_templates/master/Images/organizr-icon.png", + "name": "Gitlab", + "note": "Gitlab with runner.", + "platform": "linux", + "repository": { + "stackfile": "Template/Stack/gitlab.yml", + "url": "https://github.com/Qballjos/portainer_templates" + }, + "title": "Gitlab", + "type": 3 } ] }