goodchip / docker-nextcloud-letsencrypt

Automated docker nextcloud for nginx proxy (webproxy) integrated with LetsEncrypt

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Automated docker nextcloud for nginx proxy (webproxy) integrated with LetsEncrypt

This repo allows you to set up the great Nextcloud as a container over SSL auto generated and auto renewed by our Web Proxy.

Nextcloud Environment

Prerequisites

In order to use this compose file (docker-compose.yml) you must have:

  1. docker https://docs.docker.com/engine/installation/
  2. docker-compose https://docs.docker.com/compose/install/
  3. docker-compose-letsencrypt-nginx-proxy-companion https://github.com/evertramos/docker-compose-letsencrypt-nginx-proxy-companion

How to use

  1. Clone this repository:
git clone https://github.com/evertramos/docker-nextcloud-letsencrypt.git
  1. Make a copy of our .env.sample and rename it to .env:

Update this file with your preferences.

#
# Configuration for Nextcloud using NGINX WebProxy
#

# Containers name
DB_CONTAINER_NAME=cloud-db
APP_CONTAINER_NAME=cloud-app

# Mysql settings
MYSQL_HOST=cloud-db
MYSQL_DATABASE=cloud_db
MYSQL_ROOT_PASSWORD= cloud,root,password
MYSQL_USER=cloud_user
MYSQL_PASSWORD=cloud,user,password

# Nextcloud settings
NEXTCLOUD_ADMIN_USER=admin
NEXTCLOUD_ADMIN_PASSWORD=admin,password

# Nextcloud data path
NEXTCLOUD_DATA_DIR=/var/www/html/data
NEXTCLOUD_TABLE_PREFIX=

# Nextcloud local data path
LOCAL_DB_DIR=/home/user/cloud/data/db
LOCAL_DATA_DIR=/home/user/cloud/data/cloud
LOCAL_CONF_DIR=/home/user/cloud/data/cloud/config
LOCAL_APPS_DIR=/home/user/cloud/data/cloud/apps

# Host 
VIRTUAL_HOST=cloud.yourdomain.com
LETSENCRYPT_HOST=cloud.yourdomain.com
LETSENCRYPT_EMAIL=your_email@yourdomain.com

#
# Network name
# 
# Your container app must use a network conencted to your webproxy 
# https://github.com/evertramos/docker-compose-letsencrypt-nginx-proxy-companion
#
NETWORK=webproxy
  1. Start your container
$ docker-compose up -d
  1. Overwrite protocol to https
$ docker exec --user www-data cloud-app php occ config:system:set overwriteprotocol --value="https"

This container must be in a network connected to your webproxy containers or use the same network of the webproxy.

Please keep in mind that when starting for the first time it may take a few moments (even a couple minutes) to get your Let's Encrypt certificates generated.

Any further Nextcloud configuration please check Nextcloud Admin Documentation

About

Automated docker nextcloud for nginx proxy (webproxy) integrated with LetsEncrypt