elestio/etherpad
Etherpad, verified and packaged by Elestio
10K+
Etherpad is a real-time collaborative editor scalable to thousands of simultaneous real time users. It provides full data export capabilities, and runs on your server, under your control.
Deploy a fully managed etherpad on elest.io if you want automated backups, reverse proxy with SSL termination, firewall, automated OS & Software updates, and a team of Linux experts and open source enthusiasts to ensure your services are always safe, and functional.
You can deploy it easily with the following command:
git clone https://github.com/elestio-examples/etherpad.git
Copy the .env file from tests folder to the project directory
cp ./tests/.env ./.env
Edit the .env file with your own values.
Create data folders with correct permissions
Run the project with the following command
docker-compose up -d
You can access the Web UI at: http://your-domain:9001
Here are some example snippets to help you get started creating a container.
version: "3.5"
services:
etherpad:
image: elestio/etherpad:${SOFTWARE_VERSION_TAG}
environment:
- TITLE=${TITLE}
- DEFAULT_PAD_TEXT=${DEFAULT_PAD_TEXT}
- DB_TYPE=${DB_TYPE}
- DB_HOST=${DB_HOST}
- DB_PORT=${DB_PORT}
- DB_NAME=${DB_NAME}
- DB_USER=${DB_USER}
- DB_PASS=${DB_PASS}
- DB_CHARSET=${DB_CHARSET}
ports:
- "172.17.0.1:9001:9001"
depends_on:
- postgres
postgres:
image: postgres:${SOFTWARE_VERSION_TAG}
environment:
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- ".postgresql/data/pgdata:/var/lib/pgdata"
Variable | Value (example) |
---|---|
SOFTWARE_VERSION_TAG | latest |
ADMIN_PASSWORD | password |
ADMIN_EMAIL | test@email.com |
TITLE | etherpad |
DEFAULT_PAD_TEXT | text |
DB_TYPE | postgres |
DB_HOST | postgres |
DB_PORT | 5432 |
DB_NAME | db-name |
DB_USER | db-user |
DB_PASS | db-password |
DB_CHARSET | utf8mb4 |
POSTGRES_DB | db-name |
POSTGRES_USER | db-user |
POSTGRES_PASSWORD | db-password |
The Elestio Etherpad Docker image sends the container logs to stdout. To view the logs, you can use the following command:
docker-compose logs -f
To stop the stack you can use the following command:
docker-compose down
To make backup and restore operations easier, we are using folder volume mounts. You can simply stop your stack with docker-compose down, then backup all the files and subfolders in the folder near the docker-compose.yml file.
Creating a ZIP Archive For example, if you want to create a ZIP archive, navigate to the folder where you have your docker-compose.yml file and use this command:
zip -r myarchive.zip .
Restoring from ZIP Archive To restore from a ZIP archive, unzip the archive into the original folder using the following command:
unzip myarchive.zip -d /path/to/original/folder
Starting Your Stack Once your backup is complete, you can start your stack again with the following command:
docker-compose up -d
That's it! With these simple steps, you can easily backup and restore your data volumes using Docker Compose.
docker pull elestio/etherpad