gnu-social/docs/src/install/docker_shell.md

1.9 KiB

Docker Installation

Installation with Docker

This installation method required Docker and Docker Compose. Use bin/configure and pick docker, which enables all needed services as containers, or mixed which let's you pick which services you'd like to create containers for. This way you can use services in the host machine, which may be useful if your host already has a webserver, for instance.

If you elect to not use some service containers, check Instal without Docker with shell access for details on the configuration of each service.

Prerequisites

In order to host your GNU social instance, you'll need a domain:

  • DNS domain
  • docker
  • docker-compose

If you don't have a fixed public IP, for local hosting or development, or if you're behind a NAT, use a dynamic DNS solutions. Search for GnuDIP host or dynamic dns. To use GnuDIP, clone , then inspect and run the ./install.sh script. This allows you to have a domain that dynamically points to your IP address.

{{#include dns.md}}

{{#include tls.md}}

{{#include no_tls.md}}

Configuration

{{#include bin-configure.md}}

Permissions

The PHP docker container needs the GNU social folder to be owned by the group 82 (www-data).

Running

If you elected to use all or some containers, run docker-compose up from the root of the project (the folder where the .git folder is). In this form, the application can be stopped by pressing C-c (^C, CTRL + C); pressing it again will force the containers to stop immediately. However, this form will show you all logs, but in most cases, you won't want to see those all the time. For that, run docker-compose up -d from the same directory; The application can then be stopped with docker-compose down.