Skip to content

Instantly share code, notes, and snippets.

@pbt001
Created November 16, 2018 23:20

Revisions

  1. @crazy-max crazy-max revised this gist Sep 28, 2017. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion docker-compose.yml
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,4 @@
    version: '3.0'
    version: '3'

    services:
    proxy:
  2. @crazy-max crazy-max revised this gist Sep 28, 2017. 1 changed file with 40 additions and 16 deletions.
    56 changes: 40 additions & 16 deletions docker-compose.yml
    Original file line number Diff line number Diff line change
    @@ -7,8 +7,7 @@ services:
    - "com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy=true"
    container_name: nextcloud-proxy
    networks:
    nextcloud:
    ipv4_address: 172.27.1.2
    - nextcloud_default
    ports:
    - 80:80
    - 443:443
    @@ -17,6 +16,7 @@ services:
    - ./proxy/vhost.d:/etc/nginx/vhost.d:rw
    - ./proxy/html:/usr/share/nginx/html:rw
    - ./proxy/certs:/etc/nginx/certs:ro
    - /etc/localtime:/etc/localtime:ro
    - /var/run/docker.sock:/tmp/docker.sock:ro
    restart: unless-stopped

    @@ -26,45 +26,69 @@ services:
    depends_on:
    - proxy
    networks:
    nextcloud:
    ipv4_address: 172.27.1.3
    - nextcloud_default
    volumes:
    - ./proxy/certs:/etc/nginx/certs:rw
    - ./proxy/vhost.d:/etc/nginx/vhost.d:rw
    - ./proxy/html:/usr/share/nginx/html:rw
    - /etc/localtime:/etc/localtime:ro
    - /var/run/docker.sock:/var/run/docker.sock:ro
    restart: unless-stopped

    db:
    image: mariadb
    container_name: nextcloud-mariadb
    networks:
    nextcloud:
    ipv4_address: 172.27.1.4
    - nextcloud_default
    volumes:
    - ./db:/var/lib/mysql
    - /etc/localtime:/etc/localtime:ro
    environment:
    - MYSQL_ROOT_PASSWORD=
    - MYSQL_PASSWORD=
    - MYSQL_DATABASE=nextcloud
    - MYSQL_USER=nextcloud
    restart: unless-stopped

    cron:
    image: nextcloud:11.0.5
    container_name: nextcloud-cron
    volumes:
    - nextcloud:/var/www/html
    networks:
    - nextcloud_default
    user: www-data
    entrypoint: |
    bash -c 'bash -s <<EOF
    trap "break;exit" SIGHUP SIGINT SIGTERM
    while [ ! -f /var/www/html/config/config.php ]; do
    sleep 1
    done
    while true; do
    php -f /var/www/html/cron.php
    sleep 15m
    done
    EOF'
    depends_on:
    - db
    restart: unless-stopped

    app:
    image: nextcloud:11.0.5
    container_name: nextcloud-app
    networks:
    nextcloud:
    ipv4_address: 172.27.1.5
    - nextcloud_default
    depends_on:
    - letsencrypt
    - proxy
    - db
    volumes:
    - nextcloud:/var/www/html
    - ./app/config:/var/www/html/config
    - ./app/custom_apps:/var/www/html/custom_apps
    - ./app/data:/var/www/html/data
    - ./app/themes:/var/www/html/themes
    - /etc/localtime:/etc/localtime:ro
    environment:
    - VIRTUAL_HOST=nextcloud.example.com
    - LETSENCRYPT_HOST=nextcloud.example.com
    @@ -75,10 +99,11 @@ services:
    image: alterrebe/postfix-relay
    container_name: nextcloud-postfix
    networks:
    nextcloud:
    ipv4_address: 172.27.1.6
    - nextcloud_default
    depends_on:
    - app
    volumes:
    - /etc/localtime:/etc/localtime:ro
    environment:
    - RELAY_HOST_NAME=nextcloud.example.com
    - ACCEPTED_NETWORK=0.0.0.0/0
    @@ -88,11 +113,10 @@ services:
    - SMTP_PASSWORD=
    - USE_TLS=yes
    - TLS_VERIFY=may
    restart: always
    restart: unless-stopped

    networks:
    volumes:
    nextcloud:
    driver: bridge
    ipam:
    config:
    - subnet: 172.27.1.0/24

    networks:
    nextcloud_default:
  3. @crazy-max crazy-max renamed this gist Sep 25, 2017. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  4. @crazy-max crazy-max created this gist Sep 25, 2017.
    42 changes: 42 additions & 0 deletions config.php
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,42 @@
    <?php
    $CONFIG = array (
    'trusted_domains' =>
    array (
    0 => 'nextcloud.example.com',
    1 => '127.0.0.1',
    ),
    'apps_paths' =>
    array (
    0 =>
    array (
    'path' => '/var/www/html/apps',
    'url' => '/apps',
    'writable' => false,
    ),
    1 =>
    array (
    'path' => '/var/www/html/custom_apps',
    'url' => '/custom_apps',
    'writable' => true,
    ),
    ),
    'datadirectory' => '/var/www/html/data',
    'dbtype' => 'mysql',
    'version' => '11.0.5.1',
    'dbname' => 'nextcloud',
    'dbhost' => 'db:3306',
    'dbuser' => 'nextcloud',
    'dbpassword' => '',
    'cron_log' => true,
    'mail_smtpmode' => 'postfix',
    'mail_from_address' => 'nextcloud',
    'mail_domain' => 'example.com',
    'mail_smtphost' => 'postfix',
    'mail_smtpport' => '25',
    'forcessl' => true,
    'memcache.local' => '\\OC\\Memcache\\APCu',
    'overwrite.cli.url' => 'http://127.0.0.1:8000',
    'htaccess.RewriteBase' => '/',
    'enable_previews' => true,
    'updater.release.channel' => 'stable',
    );
    98 changes: 98 additions & 0 deletions docker-compose.yml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,98 @@
    version: '3.0'

    services:
    proxy:
    image: jwilder/nginx-proxy:alpine
    labels:
    - "com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy=true"
    container_name: nextcloud-proxy
    networks:
    nextcloud:
    ipv4_address: 172.27.1.2
    ports:
    - 80:80
    - 443:443
    volumes:
    - ./proxy/conf.d:/etc/nginx/conf.d:rw
    - ./proxy/vhost.d:/etc/nginx/vhost.d:rw
    - ./proxy/html:/usr/share/nginx/html:rw
    - ./proxy/certs:/etc/nginx/certs:ro
    - /var/run/docker.sock:/tmp/docker.sock:ro
    restart: unless-stopped

    letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion
    container_name: nextcloud-letsencrypt
    depends_on:
    - proxy
    networks:
    nextcloud:
    ipv4_address: 172.27.1.3
    volumes:
    - ./proxy/certs:/etc/nginx/certs:rw
    - ./proxy/vhost.d:/etc/nginx/vhost.d:rw
    - ./proxy/html:/usr/share/nginx/html:rw
    - /var/run/docker.sock:/var/run/docker.sock:ro
    restart: unless-stopped

    db:
    image: mariadb
    container_name: nextcloud-mariadb
    networks:
    nextcloud:
    ipv4_address: 172.27.1.4
    volumes:
    - ./db:/var/lib/mysql
    environment:
    - MYSQL_ROOT_PASSWORD=
    - MYSQL_PASSWORD=
    - MYSQL_DATABASE=nextcloud
    - MYSQL_USER=nextcloud
    restart: unless-stopped

    app:
    image: nextcloud:11.0.5
    container_name: nextcloud-app
    networks:
    nextcloud:
    ipv4_address: 172.27.1.5
    depends_on:
    - letsencrypt
    - proxy
    - db
    volumes:
    - ./app/config:/var/www/html/config
    - ./app/custom_apps:/var/www/html/custom_apps
    - ./app/data:/var/www/html/data
    - ./app/themes:/var/www/html/themes
    environment:
    - VIRTUAL_HOST=nextcloud.example.com
    - LETSENCRYPT_HOST=nextcloud.example.com
    - LETSENCRYPT_EMAIL=webmaster@example.com
    restart: unless-stopped

    postfix:
    image: alterrebe/postfix-relay
    container_name: nextcloud-postfix
    networks:
    nextcloud:
    ipv4_address: 172.27.1.6
    depends_on:
    - app
    environment:
    - RELAY_HOST_NAME=nextcloud.example.com
    - ACCEPTED_NETWORK=0.0.0.0/0
    - EXT_RELAY_HOST=[smtp.example.com]
    - EXT_RELAY_PORT=587
    - SMTP_LOGIN=smtp@example.com
    - SMTP_PASSWORD=
    - USE_TLS=yes
    - TLS_VERIFY=may
    restart: always

    networks:
    nextcloud:
    driver: bridge
    ipam:
    config:
    - subnet: 172.27.1.0/24