Skip to content

tiredofit/docker-freescout

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

github.com/tiredofit/docker-freescout

GitHub release Build Status Docker Stars Docker Pulls Become a sponsor Paypal Donate


About

This will build a Docker Image for FreeScout - An open source Helpscout / Zendesk alternative.

  • Automatically installs and sets up installation upon first start

Maintainer

Table of Contents

Prerequisites and Assumptions

  • Assumes you are using some sort of SSL terminating reverse proxy such as:
  • Requires access to a MySQL/MariaDB or Postgres Server

Installation

Build from Source

Clone this repository and build the image with docker build -t (imagename) .

Prebuilt Images

Builds of the image are available on Docker Hub

docker pull docker.io/tiredofit/freescout:(imagetag)

Builds of the image are also available on the Github Container Registry

docker pull ghcr.io/tiredofit/docker-freescout:(imagetag)

The following image tags are available along with their tagged release based on what's written in the Changelog:

Container OS Tag
Alpine :latest

Configuration

Quick Start

The first boot can take from 2 minutes - 5 minutes depending on your CPU to setup the proper schemas.

  • Login to the web server and enter in your admin email address, admin password and start configuring the system!

Persistent Storage

The following directories are used for configuration and can be mapped for persistent storage.

Directory Description
/www/logs Nginx and PHP Log files
/assets/custom (Optional) Copy source code over existing source code in /www/html upon container start. Use exact file/folder structure
/assets/custom-scripts (Optional) If you want to execute custom scripting, place scripts here with extension .sh
/assets/modules (Optional) If you want to add additional modules outside of the source tree, add them here
/www/html (Optional) If you want to expose the Freescout sourcecode and enable Self Updating, expose this volume
OR
/data Hold onto your persistent sessions and cache between container restarts

Environment Variables

Base Images used

This image relies on an Alpine Linux or Debian Linux base image that relies on an init system for added capabilities. Outgoing SMTP capabilities are handlded via msmtp. Individual container performance monitoring is performed by zabbix-agent. Additional tools include: bash,curl,less,logrotate,nano.

Be sure to view the following repositories to understand all the customizable options:

Image Description
OS Base Customized Image based on Alpine Linux
Nginx Nginx webserver
PHP-FPM PHP Interpreter
Parameter Description Default _FILE
ADMIN_EMAIL Administrator Email Address - Needed for logging in x
ADMIN_FIRST_NAME Admin user First Name Admin x
ADMIN_LAST_NAME Admin user First Name User x
ADMIN_PASS Administrator Password - Needed for Logging in x
APPLICATION_NAME Change default application name - Default Freescout freescout
APP_PROXY Allow Application to use a proxy for fetching modules
APP_TRUSTED_PROXIES Comma separated list of trusted proxies, i.e. 192.168.1.1,192.168.1.2,192.168.1.3
APP_NEW_FETCHING_LIBRARY Sets FreeScout's new_fetching_library config option FALSE
APP_X_FRAME_OPTIONS Allow to embed via iframes TRUE FALSE DENY ALLOW FROM example.org TRUE
DB_TYPE Type of the Database. Currently supported are mysql and pgsql mysql
DB_PGSQL_SSL_MODE Postgresql TLS Mode prefer
DB_HOST Host or container name of the Databse Server e.g. freescout-db x
DB_PORT Database Port e.g.3306 for mysql, 5432 for postgres 3306 x
DB_NAME Database name e.g. freescout x
DB_USER Username for above Database e.g. freescout x
DB_PASS Password for above Database e.g. password x
DISPLAY_ERRORS Display Errors on Website FALSE
ENABLE_AUTO_UPDATE If coming from an earlier version of image, automatically update it to latest Freescout release TRUE
SETUP_TYPE Automatically edit configuration after first bootup AUTO or MANUAL AUTO
SITE_URL The url your site listens on example https://freescout.example.com

Networking

The following ports are exposed.

Port Description
80 HTTP

Maintenance

Shell Access

For debugging and maintenance purposes you may want access the containers shell.

bash docker exec -it (whatever your container name is) bash

Support

These images were built to serve a specific need in a production environment and gradually have had more functionality added based on requests from the community.

Usage

  • The Discussions board is a great place for working with the community on tips and tricks of using this image.
  • Sponsor me for personalized support

Bugfixes

  • Please, submit a Bug Report if something isn't working as expected. I'll do my best to issue a fix in short order.

Feature Requests

  • Feel free to submit a feature request, however there is no guarantee that it will be added, or at what timeline.
  • Sponsor me regarding development of features.

Updates

  • Best effort to track upstream changes, More priority if I am actively using the image in a production environment.
  • Sponsor me for up to date releases.

License

MIT. See LICENSE for more details.

References