Skip to content

Instantly share code, notes, and snippets.

@bashkirtsevich
Created April 8, 2021 13:51

Revisions

  1. bashkirtsevich created this gist Apr 8, 2021.
    71 changes: 71 additions & 0 deletions docker-compose.yml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,71 @@
    # https://rtfm.co.ua/nextcloud-zapusk-v-docker-compose-na-debian-s-ssl-ot-lets-encrypt/
    version: '3'
    services:
    nginx-proxy:
    image: jwilder/nginx-proxy:0.4.0
    labels:
    - "com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy=true"
    container_name: nextcloud-proxy
    networks:
    - nextcloud_network
    ports:
    - 80:80
    - 443:443
    volumes:
    - /data/nextcloud/nginx/vhost.d:/etc/nginx/vhost.d:rw
    - /data/nextcloud/nginx/html:/usr/share/nginx/html:rw
    - /data/nextcloud/nginx/certs:/etc/nginx/certs:ro
    - /etc/localtime:/etc/localtime:ro
    - /var/run/docker.sock:/tmp/docker.sock:ro
    restart: unless-stopped
    letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion:v1.12
    container_name: nextcloud-letsencrypt
    depends_on:
    - nginx-proxy
    networks:
    - nextcloud_network
    volumes:
    - /data/nextcloud/nginx/vhost.d:/etc/nginx/vhost.d:rw
    - /data/nextcloud/nginx/html:/usr/share/nginx/html:rw
    - /data/nextcloud/nginx/certs:/etc/nginx/certs:rw
    - /etc/localtime:/etc/localtime:ro
    - /var/run/docker.sock:/var/run/docker.sock:ro
    restart: unless-stopped
    mysql:
    image: mariadb:10.4.10
    container_name: nextcloud-mysql
    networks:
    - nextcloud_network
    volumes:
    - /data/nextcloud/mysql:/var/lib/mysql
    - /etc/localtime:/etc/localtime:ro
    environment:
    - MYSQL_ROOT_PASSWORD=mysql-root-p@ssw0rd
    - MYSQL_PASSWORD=nextcloud-p@ssw0rd
    - MYSQL_DATABASE=nextcloud
    - MYSQL_USER=nextcloud
    restart: unless-stopped
    nextcloud-app:
    image: nextcloud:17.0.1-apache
    container_name: nextcloud-app
    networks:
    - nextcloud_network
    depends_on:
    - letsencrypt
    - nginx-proxy
    - mysql
    volumes:
    - /data/nextcloud/app/html:/var/www/html
    - /data/nextcloud/app/config:/var/www/html/config
    - /data/nextcloud/app/custom_apps:/var/www/html/custom_apps
    - /data/nextcloud/app/data:/var/www/html/data
    - /data/nextcloud/app/themes:/var/www/html/themes
    - /etc/localtime:/etc/localtime:ro
    environment:
    - VIRTUAL_HOST=cloud.example.org.ua
    - LETSENCRYPT_HOST=cloud.example.org.ua
    - LETSENCRYPT_EMAIL=root@example.org.ua
    restart: unless-stopped
    networks:
    nextcloud_network: