This repository has been archived on 2023-02-05. You can view files and clone it, but cannot push or open issues or pull requests.
loki/docker-compose.yml

172 lines
4.9 KiB
YAML
Raw Normal View History

2017-09-16 22:27:47 +02:00
version: '2'
volumes:
wiki:
nextcloud:
nextcloud_db:
gitlab_config:
gitlab_logs:
gitlab_data:
letsencrypt:
letsencrypt_html:
runner_main_etc:
runner_main_home:
2017-09-16 22:27:47 +02:00
services:
2017-09-16 23:39:30 +02:00
# ---------------------------------------------------------------------------
# Static website served at wojciechkozlowski.eu
# ---------------------------------------------------------------------------
2017-09-16 22:27:47 +02:00
html:
2018-01-25 01:30:19 +01:00
container_name: html
image: nginx
volumes:
- ./html/html-wojciechkozlowski.eu/:/usr/share/nginx/html/
2017-09-16 22:53:23 +02:00
restart: always
2017-09-16 22:27:47 +02:00
2017-09-16 23:39:30 +02:00
# ---------------------------------------------------------------------------
# DokuWiki installation available at wiki.wojciechkozlowski.eu
# ---------------------------------------------------------------------------
2017-09-16 22:27:47 +02:00
wiki:
2018-01-25 01:30:19 +01:00
container_name: wiki
2017-09-16 22:27:47 +02:00
build: dokuwiki
image: gitlab.wojciechkozlowski.eu:8443/wojtek/loki/wiki
2017-09-16 22:27:47 +02:00
volumes:
- wiki:/var/dokuwiki-storage
2017-09-16 22:53:23 +02:00
restart: always
2017-09-16 23:39:30 +02:00
# ---------------------------------------------------------------------------
# NextCloud installation available at cloud.wojciechkozlowski.eu
# ---------------------------------------------------------------------------
2017-09-16 22:53:23 +02:00
nextcloud-db:
2018-01-25 01:30:19 +01:00
container_name: nextcloud-db
2017-09-16 22:53:23 +02:00
image: mariadb
volumes:
- nextcloud_db:/var/lib/mysql
2017-09-16 22:53:23 +02:00
environment:
- MYSQL_ROOT_PASSWORD=nextcloud
- MYSQL_PASSWORD=nextcloud
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
restart: always
2017-09-16 23:39:30 +02:00
nextcloud-app:
2018-01-25 01:30:19 +01:00
container_name: nextcloud-app
2017-09-16 22:53:23 +02:00
image: nextcloud:fpm
links:
- nextcloud-db
volumes:
- nextcloud:/var/www/html
2017-09-16 22:53:23 +02:00
restart: always
nextcloud-cron:
2018-01-25 01:30:19 +01:00
container_name: nextcloud-cron
build: nextcloud/cron
image: gitlab.wojciechkozlowski.eu:8443/wojtek/loki/nextcloud-cron
volumes_from:
- nextcloud-app
restart: always
2017-09-16 23:39:30 +02:00
nextcloud:
2018-01-25 01:30:19 +01:00
container_name: nextcloud
2017-09-16 22:53:23 +02:00
image: nginx
links:
2017-09-16 23:39:30 +02:00
- nextcloud-app
2017-09-16 22:53:23 +02:00
volumes:
- ./nextcloud/nginx.conf:/etc/nginx/nginx.conf:ro
volumes_from:
2017-09-16 23:39:30 +02:00
- nextcloud-app
2017-09-16 22:53:23 +02:00
restart: always
2017-09-16 22:27:47 +02:00
2017-09-16 23:39:30 +02:00
# ---------------------------------------------------------------------------
# GitLab installation available at gitlab.wojciechkozlowski.eu
# ---------------------------------------------------------------------------
gitlab:
2018-01-25 01:30:19 +01:00
container_name: gitlab
image: gitlab/gitlab-ce
2017-09-16 23:39:30 +02:00
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://gitlab.wojciechkozlowski.eu'
2018-01-23 22:40:34 +01:00
registry_external_url 'https://gitlab.wojciechkozlowski.eu:8443'
registry_nginx['ssl_certificate'] = "/etc/letsencrypt/live/wojciechkozlowski.eu/fullchain.pem"
registry_nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/wojciechkozlowski.eu/privkey.pem"
2017-09-16 23:39:30 +02:00
# Add any other gitlab.rb configuration here, each on its own line
2017-09-17 02:07:45 +02:00
ports:
2017-09-17 14:55:00 +02:00
- '2770:22'
2018-01-23 22:40:34 +01:00
- '8443:8443'
2017-09-16 23:39:30 +02:00
volumes:
- gitlab_config:/etc/gitlab
- gitlab_logs:/var/log/gitlab
- gitlab_data:/var/opt/gitlab
- letsencrypt:/etc/letsencrypt
- ./gitlab/ssh_config:/etc/ssh/ssh_config
2017-09-16 23:39:30 +02:00
restart: always
# ---------------------------------------------------------------------------
# Reverse proxy served by Nginx
# ---------------------------------------------------------------------------
2017-09-16 22:27:47 +02:00
proxy:
2017-09-16 22:53:23 +02:00
container_name: proxy
2017-09-17 23:14:21 +02:00
build: proxy
image: gitlab.wojciechkozlowski.eu:8443/wojtek/loki/proxy
2017-09-16 22:27:47 +02:00
ports:
- 80:80
2017-09-17 02:07:45 +02:00
- 443:443
2017-09-16 22:27:47 +02:00
links:
- html
- wiki
2017-09-16 23:39:30 +02:00
- nextcloud
- gitlab
volumes:
2017-09-17 02:07:45 +02:00
- ./proxy/nginx.conf:/etc/nginx/nginx.conf:ro
- ./proxy/nginx-conf.d:/etc/nginx/conf.d:ro
- letsencrypt:/etc/letsencrypt
- letsencrypt_html:/var/www/html
2017-09-17 02:49:55 +02:00
restart: always
# ---------------------------------------------------------------------------
# Certbot container running a cron job to renew certificates.
# ---------------------------------------------------------------------------
certbot:
container_name: certbot
build: certbot
image: gitlab.wojciechkozlowski.eu:8443/wojtek/loki/certbot
2017-09-17 02:49:55 +02:00
volumes:
- letsencrypt:/etc/letsencrypt
- letsencrypt_html:/var/www/html
2017-09-16 22:27:47 +02:00
restart: always
2018-01-23 01:05:04 +01:00
# ---------------------------------------------------------------------------
# Gitlab runners for CI.
2018-01-23 01:05:04 +01:00
# ---------------------------------------------------------------------------
runner-main:
2018-01-25 01:30:19 +01:00
container_name: runner-main
2018-01-23 02:30:12 +01:00
build: runner
image: gitlab.wojciechkozlowski.eu:8443/wojtek/loki/runner
2018-01-23 01:05:04 +01:00
volumes:
- runner_main_etc:/etc/gitlab-runner
- runner_main_home:/home/gitlab-runner
2018-01-23 01:05:04 +01:00
- /var/run/docker.sock:/var/run/docker.sock
restart: always
docker-dind:
container_name: docker-dind
image: docker:dind
privileged: true
restart: always
runner-docker:
container_name: runner-docker
build: runner
image: gitlab.wojciechkozlowski.eu:8443/wojtek/loki/runner
links:
- docker-dind:docker
restart: always