Loading .gitlab-ci.yml +31 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,37 @@ deploy-artifactory-dev: - dev when: manual deploy-gitlab-ce-dev: stage: deploy variables: DOCKER_DRIVER: overlay2 DEPLOY_DIR_NAME: gitlab-ce SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: gitlab-ce IMAGE_TAG: latest COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml AWS_REGION: ${OAGDEV_GITLAB_AWS_REGION} AWS_ACCESS_KEY_ID: ${OAGDEV_GITLAB_AWS_ACCESS_KEY} AWS_SECRET_ACCESS_KEY: ${OAGDEV_GITLAB_AWS_SECRET_KEY} SMTP_ADDR: ${OAGDEV_GITLAB_SMTP_ADDR} SMTP_USER: ${OAGDEV_GITLAB_SMTP_USER} SMTP_PASS: ${OAGDEV_GITLAB_SMTP_PASS} SMTP_DOMAIN: ${OAGDEV_GITLAB_SMTP_DOMAIN} services: - docker:dind script: - create-nets.sh gitlab-net - > deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION} AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} SMTP_ADDR=${SMTP_ADDR} SMTP_USER=${SMTP_USER} SMTP_PASS=${SMTP_PASS} SMTP_DOMAIN=${SMTP_DOMAIN} environment: name: dev/${SERVICE} url: https://git.${DEV_PUBLIC_HOSTNAME} only: - dev when: manual deploy-gitlab-runner-local: stage: deploy variables: Loading README.md +7 −0 Original line number Diff line number Diff line Loading @@ -3,7 +3,14 @@ ## Services * Artifactory * GitLab-CE * GitLab Runner local * GitLab Runner remote * Grafana * Mail admin * Mail client * Mail server * Minio * PGAdmin * Portainer * Prometheus Loading gitlab-ce/.env 0 → 100644 +13 −0 Original line number Diff line number Diff line GITLAB_PROTOCOL=https GITLAB_DOMAIN=redmic.net GITLAB_SUBDOMAIN=git GITLAB_REGISTRY_SUBDOMAIN=registry GITLAB_SSH_PORT=2022 GITLAB_HTTPS_PORT=2443 AWS_REGION=region AWS_ACCESS_KEY_ID=id AWS_SECRET_ACCESS_KEY=secret SMTP_ADDR=smtp.example.org SMTP_USER=user SMTP_PASS=pass SMTP_DOMAIN=example.org gitlab-ce/docker-compose.dev.yml 0 → 100644 +42 −0 Original line number Diff line number Diff line version: '3.5' services: gitlab-ce: container_name: gitlab-ce hostname: ${GITLAB_SUBDOMAIN}.${GITLAB_DOMAIN} restart: on-failure:3 ports: - "${GITLAB_SSH_PORT}:22" - "${GITLAB_HTTPS_PORT}:443" environment: GITLAB_OMNIBUS_CONFIG: | external_url '${GITLAB_PROTOCOL}://${GITLAB_SUBDOMAIN}.${GITLAB_DOMAIN}' registry_external_url '${GITLAB_PROTOCOL}://${GITLAB_REGISTRY_SUBDOMAIN}.${GITLAB_DOMAIN}' gitlab_rails['registry_enabled'] = true web_server['external_users'] = ['www-data'] gitlab_rails['backup_keep_time'] = 604800 gitlab_rails['backup_upload_connection'] = { 'provider' => 'AWS', 'region' => "${AWS_REGION}", 'aws_access_key_id' => "${AWS_ACCESS_KEY_ID}", 'aws_secret_access_key' => "${AWS_SECRET_ACCESS_KEY}" } gitlab_rails['backup_upload_remote_directory'] = 'gitlab.bkp' gitlab_rails['db_port'] = 5432 gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "${SMTP_ADDR}" gitlab_rails['smtp_port'] = 25 gitlab_rails['smtp_user_name'] = "${SMTP_USER}" gitlab_rails['smtp_password'] = "${SMTP_PASS}" gitlab_rails['smtp_domain'] = "${SMTP_DOMAIN}" gitlab_rails['smtp_authentication'] = "plain" gitlab_rails['smtp_enable_starttls_auto'] = true unicorn['port'] = 8090 volumes: gitlab-ce-config-vol: name: gitlab-ce-config-vol gitlab-ce-log-vol: name: gitlab-ce-log-vol gitlab-ce-data-vol: name: gitlab-ce-data-vol gitlab-ce/docker-compose.tmpl.yml 0 → 100644 +15 −0 Original line number Diff line number Diff line version: '3.5' services: gitlab-ce: image: gitlab/gitlab-ce:${IMAGE_TAG:-latest} networks: - gitlab-net volumes: - gitlab-ce-config-vol:/etc/gitlab - gitlab-ce-log-vol:/var/log/gitlab - gitlab-ce-data-vol:/var/opt/gitlab networks: gitlab-net: external: true Loading
.gitlab-ci.yml +31 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,37 @@ deploy-artifactory-dev: - dev when: manual deploy-gitlab-ce-dev: stage: deploy variables: DOCKER_DRIVER: overlay2 DEPLOY_DIR_NAME: gitlab-ce SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: gitlab-ce IMAGE_TAG: latest COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml AWS_REGION: ${OAGDEV_GITLAB_AWS_REGION} AWS_ACCESS_KEY_ID: ${OAGDEV_GITLAB_AWS_ACCESS_KEY} AWS_SECRET_ACCESS_KEY: ${OAGDEV_GITLAB_AWS_SECRET_KEY} SMTP_ADDR: ${OAGDEV_GITLAB_SMTP_ADDR} SMTP_USER: ${OAGDEV_GITLAB_SMTP_USER} SMTP_PASS: ${OAGDEV_GITLAB_SMTP_PASS} SMTP_DOMAIN: ${OAGDEV_GITLAB_SMTP_DOMAIN} services: - docker:dind script: - create-nets.sh gitlab-net - > deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION} AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} SMTP_ADDR=${SMTP_ADDR} SMTP_USER=${SMTP_USER} SMTP_PASS=${SMTP_PASS} SMTP_DOMAIN=${SMTP_DOMAIN} environment: name: dev/${SERVICE} url: https://git.${DEV_PUBLIC_HOSTNAME} only: - dev when: manual deploy-gitlab-runner-local: stage: deploy variables: Loading
README.md +7 −0 Original line number Diff line number Diff line Loading @@ -3,7 +3,14 @@ ## Services * Artifactory * GitLab-CE * GitLab Runner local * GitLab Runner remote * Grafana * Mail admin * Mail client * Mail server * Minio * PGAdmin * Portainer * Prometheus Loading
gitlab-ce/.env 0 → 100644 +13 −0 Original line number Diff line number Diff line GITLAB_PROTOCOL=https GITLAB_DOMAIN=redmic.net GITLAB_SUBDOMAIN=git GITLAB_REGISTRY_SUBDOMAIN=registry GITLAB_SSH_PORT=2022 GITLAB_HTTPS_PORT=2443 AWS_REGION=region AWS_ACCESS_KEY_ID=id AWS_SECRET_ACCESS_KEY=secret SMTP_ADDR=smtp.example.org SMTP_USER=user SMTP_PASS=pass SMTP_DOMAIN=example.org
gitlab-ce/docker-compose.dev.yml 0 → 100644 +42 −0 Original line number Diff line number Diff line version: '3.5' services: gitlab-ce: container_name: gitlab-ce hostname: ${GITLAB_SUBDOMAIN}.${GITLAB_DOMAIN} restart: on-failure:3 ports: - "${GITLAB_SSH_PORT}:22" - "${GITLAB_HTTPS_PORT}:443" environment: GITLAB_OMNIBUS_CONFIG: | external_url '${GITLAB_PROTOCOL}://${GITLAB_SUBDOMAIN}.${GITLAB_DOMAIN}' registry_external_url '${GITLAB_PROTOCOL}://${GITLAB_REGISTRY_SUBDOMAIN}.${GITLAB_DOMAIN}' gitlab_rails['registry_enabled'] = true web_server['external_users'] = ['www-data'] gitlab_rails['backup_keep_time'] = 604800 gitlab_rails['backup_upload_connection'] = { 'provider' => 'AWS', 'region' => "${AWS_REGION}", 'aws_access_key_id' => "${AWS_ACCESS_KEY_ID}", 'aws_secret_access_key' => "${AWS_SECRET_ACCESS_KEY}" } gitlab_rails['backup_upload_remote_directory'] = 'gitlab.bkp' gitlab_rails['db_port'] = 5432 gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "${SMTP_ADDR}" gitlab_rails['smtp_port'] = 25 gitlab_rails['smtp_user_name'] = "${SMTP_USER}" gitlab_rails['smtp_password'] = "${SMTP_PASS}" gitlab_rails['smtp_domain'] = "${SMTP_DOMAIN}" gitlab_rails['smtp_authentication'] = "plain" gitlab_rails['smtp_enable_starttls_auto'] = true unicorn['port'] = 8090 volumes: gitlab-ce-config-vol: name: gitlab-ce-config-vol gitlab-ce-log-vol: name: gitlab-ce-log-vol gitlab-ce-data-vol: name: gitlab-ce-data-vol
gitlab-ce/docker-compose.tmpl.yml 0 → 100644 +15 −0 Original line number Diff line number Diff line version: '3.5' services: gitlab-ce: image: gitlab/gitlab-ce:${IMAGE_TAG:-latest} networks: - gitlab-net volumes: - gitlab-ce-config-vol:/etc/gitlab - gitlab-ce-log-vol:/var/log/gitlab - gitlab-ce-data-vol:/var/opt/gitlab networks: gitlab-net: external: true