Bobcares

Docker Nextcloud Postgres | Setup Tutorial

by | Dec 11, 2022

Let’s look into the steps to set up Nextcloud and Postgres using Docker. At Bobcares, with our Docker Hosting Support Services, we can handle your Docker-related issues.

 

How to set up Nextcloud and Postgres using Docker?

The steps to install Nextcloud with OnlyOffice and Postgres are as follows:

  • Repository Downloading
  • Container Set-up
  • Starting
  • Reverse Proxy Set-up
  • Postgres DB Selection
  • OnlyOffice Set-up
  • Stack Upgrading
 

 

docker nextcloud postgres

 

 

Let’s look into the details of each step one by one.

 

Repository Downloading

We can use the below code to download the repository. We must remember the name of a directory as we may need it later.

 
cd /home/user
git clone https://github.com/onlyoffice/docker-onlyoffice-nextcloud
mv docker-onlyoffice-nextcloud nextcloud
cd nextcloud
 

Container Set-up

We must now make a DB container using the below code:

 
sudo docker pull postgres:12.5-alpine

sudo docker run --name postgres12 \
-v /YOUR/NEXTCLOUD/LOCATION/postgres:/var/lib/postgresql/data \
-e POSTGRES_PASSWORD=password --rm -d postgres:12.5-alpine

sudo docker exec -it postgres12 psql -U postgres
> CREATE USER nextcloud WITH PASSWORD 'password' CREATEDB;
> exit

sudo docker stop postgres12
 

In the two codes above, please use a different password, and change the location to the folder containing docker-compose.yml.

 

Starting

We must make changes to the docker-compose.yml. Then add the DB section near the top:

 
db:
restart: always
image: postgres:12.5-alpine
shm_size: 256mb
healthcheck:
test: ["CMD", "pg_isready", "-U", "postgres"]
volumes:
- ./postgres:/var/lib/postgresql/data
 

Although a relative path like this one works well, the volume path above must match the one in the docker run above. Make the DB service depend on the app service as well:

 
app:
# contaner_name: app-server
# ...
depends_on:
- db
 

Now start the script:

 
sudo docker-compose up -d
 

Reverse Proxy Set-up

We can set up a reverse proxy however we like. The Nextcloud is listening on port 8081 in this instance.

 

Postgres DB Selection

Enter the admin username and password to access the website. The Data folder path shouldn’t be changed. Then pick a PostgreSQL DB and enter the details below:

 
Field Value
User nextcloud
Password password
Database name nextcloud
Host name nextcloud_db_1
 

Now hit the “Finish” at the bottom.

 

OnlyOffice Set-up

In order to set up the OnlyOffice, we can run the set_configuration.sh script from the repository.

 
sudo set_configuration.sh
 

We can use the web interface after setting up the reverse proxy.

 

Stack Upgrading

Now we can upgrade the stack by using the below code:

 
docker-compose pull
 

Lastly, restart the composition using the code:

 
docker-compose down && docker-compose up -d
 

[Looking for a solution to another query? We are just a click away.]

 

Conclusion

The article provides a step-by-step description from our Support team to set up Nextcloud and Postgres using Docker.

 

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF