first commit
This commit is contained in:
33
Dockerfile
Normal file
33
Dockerfile
Normal file
@@ -0,0 +1,33 @@
|
||||
FROM library/debian:stable
|
||||
MAINTAINER Jared Scott <jtscott@gmail.com>
|
||||
|
||||
ENV APACHE_RUN_USER www-data
|
||||
ENV APACHE_RUN_GROUP www-data
|
||||
ENV APACHE_LOG_DIR /var/log/apache2
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
curl \
|
||||
unzip \
|
||||
apache2 \
|
||||
php5 \
|
||||
php5-mysql \
|
||||
php5-curl \
|
||||
php5-gd \
|
||||
php-fdomdocument \
|
||||
&& apt-get clean \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN /usr/sbin/a2dismod 'mpm_*' \
|
||||
&& /usr/sbin/a2enmod mpm_prefork \
|
||||
&& /usr/sbin/a2enmod ssl \
|
||||
&& /usr/sbin/a2enmod rewrite \
|
||||
&& /usr/sbin/a2ensite default-ssl \
|
||||
&& chown -R www-data:www-data /var/www/html
|
||||
|
||||
COPY download-pancake.sh /opt/
|
||||
RUN chmod 755 /opt/download-pancake.sh
|
||||
|
||||
EXPOSE 80
|
||||
EXPOSE 443
|
||||
|
||||
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
|
||||
33
README.md
Normal file
33
README.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Pancake App Docker Image
|
||||
This dockerfile will build a new installation of [Pancake App](https://www.pancakeapp.com/). A script is included to download and unpack your licensed copy of Pancake. This project is not affiliated with Pancake Payments and is provided as-is without any warranty. No software is included or redistributed.
|
||||
|
||||
# Requirements
|
||||
- A valid Pancake App license
|
||||
- A linked MySQL Container
|
||||
|
||||
# Usage
|
||||
1. Build the image
|
||||
> docker build -t docker-pancake:latest .
|
||||
2. Run the download script to unpack pancake into your mounted volume.
|
||||
> docker run -v /data/pancake:/var/www/html --rm docker-pancake:latest /opt/download-pancake.sh PAN-YOURLICENSEHERE
|
||||
3. Run a MySQL Container
|
||||
> docker run -d --restart="always" --name mysql-pancake -e MYSQL_ROOT_PASSWORD=YOURPASSWORDHERE -v /data/mysql-pancake:/var/lib/mysql -v /etc/localtime:/etc/localtime:ro mysql:latest
|
||||
4. Login to MySQL and create a Pancake database user
|
||||
> docker exec -it mysql-pancake /bin/bash -c "export TERM=xterm; exec bash"
|
||||
~~~~
|
||||
mysql -u root -p
|
||||
CREATE DATABASE pancake_db;
|
||||
CREATE USER 'pancake_user'@'%' IDENTIFIED BY 'YOURPASSWORDHERE';
|
||||
GRANT ALTER,SELECT,INSERT,UPDATE,DELETE ON pancake_db.* TO 'pancake_user'@'%';
|
||||
FLUSH PRIVILEGES;
|
||||
~~~~
|
||||
5. Create a pancake container on port 8282
|
||||
> docker run -d --restart="always" -p 8282:80 --name pancake -v /data/pancake:/var/www/html -v /etc/localtime:/etc/localtime:ro --link mysql-pancake:mysql docker-pancake:latest
|
||||
6. Follow the pancake install wizard.
|
||||
~~~~
|
||||
database host: mysql
|
||||
port: 3306
|
||||
database: pancake_db
|
||||
username: pancake_user
|
||||
password: YOURPASSWORDHERE
|
||||
~~~~
|
||||
8
download-pancake.sh
Normal file
8
download-pancake.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh -e
|
||||
curl http://manage.pancakeapp.com/download/$1 > pancake.zip \
|
||||
&& unzip pancake.zip \
|
||||
&& mv pancake_4/pancake/* /var/www/html \
|
||||
&& chmod -R 777 /var/www/html/system/pancake \
|
||||
&& chmod -R 777 /var/www/html/uploads \
|
||||
&& rm pancake.zip \
|
||||
&& rm -rf pancake_4/
|
||||
Reference in New Issue
Block a user