version: '2' services: gitlab: image: gitlab/gitlab-ce:latest dns: - 1.1.1.1 - 1.0.0.1 environment: GITLAB_OMNIBUS_CONFIG: | external_url 'https://${TRAEFIK_HOST}' gitlab_rails['gitlab_shell_ssh_port'] = 1022 hostname: ${TRAEFIK_HOST} labels: io.rancher.container.pull_image: always {{- if .Values.HOST_LABEL}} io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} {{- end}} traefik.enable: true ### Start Web Segment traefik.web.frontend.entryPoints: http,https traefik.web.frontend.headers.forceSTSHeader: true traefik.web.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information) traefik.web.frontend.headers.SSLRedirect: true traefik.web.frontend.headers.STSPreload: true traefik.web.frontend.headers.STSSeconds: 15552000 traefik.web.frontend.rule: Host:${TRAEFIK_HOST} traefik.web.port: "80" ### End Web Segment ### Start SSH Segment traefik.ssh.frontend.entryPoints: ssh traefik.ssh.frontend.rule: Host:${TRAEFIK_HOST} traefik.ssh.port: "22" ### End SSH Segment ports: - "${WEB_PORT}:80" - "1022:22" restart: on-failure volumes: - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system - /RancherCattle/${DATA_DIR}/Config:/etc/gitlab - /RancherCattle/${DATA_DIR}/Logs:/var/log/gitlab - /RancherCattle/${DATA_DIR}/Data:/var/opt/gitlab