ajagnanan / docker-phabricator

This image configures a Phabricator installation that runs within nginx.

Home Page:http://phabricator.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

docker-phabricator


This image configures a Phabricator installation that runs within nginx. The install is configured using the script.pre file (example at sample/script.pre), which contains the settings that can be found in the configuration documentation. Feel free to add more configuration settings in that file. Please be sure to mark this file as an executable.

To run this image:

  docker run -p 22:22 -p 22280:22280 -p 80:80 -p 443:443 -v /path/to/config:/config -v /path/to/repo/storage:/srv/repo     --name=phabricator ajagnanan/docker-phabricator

A docker-compose file is included as an example and can be used to run the container locally.

  docker-compose up

What do these parameters do?

  -p 22:22 = forward the host's SSH port to Phabricator for repository access
  -p 22280:22280 = forward the host's 22280 port for the notification server
  -p 80:80 -p 443:443 = http and https ports to bind to on the host
  -v path/to/config:/config = map the configuration from the host to the container
  -v path/to/repo/storage:/srv/repo = map the repository storage from the host to the container
  --name phabricator = the name of the container
  ajagnanan/docker-phabricator = the name of the image

Enabling SSL

To enable SSL, place cert.pem and cert.key files alongside script.pre. The Docker container will automatically detect the presence of the certificates and configure nginx to run with SSL enabled.

Linking to a DB container

If you are running MySQL in a Docker container (e.g. using the mysql/mysql-server container), you can configure the script.pre file like so to use the linked MariaDB container:

    ./bin/config set mysql.host "$LINKED_MYSQL_PORT_3306_TCP_ADDR"
    ./bin/config set mysql.port "$LINKED_MYSQL_PORT_3306_TCP_PORT"

SSH / Login

    Username: root
    Password: linux
    Port: 24

CVS repository hosting is done on port 22.

Extra information

  • Make sure you configure Phabricator to be backed by an external MySQL database.
  • Map a directory from the host for repository storage. Containers are volatile unless using a tool like Flocker

*** Image based on hachque's phabricator configuration with some extra information.

About

This image configures a Phabricator installation that runs within nginx.

http://phabricator.org


Languages

Language:Shell 82.7%Language:Nginx 17.3%