Init
This commit is contained in:
commit
aa207bb132
13
Dockerfile
Normal file
13
Dockerfile
Normal file
@ -0,0 +1,13 @@
|
||||
FROM docker.io/alpine:latest
|
||||
|
||||
RUN apk update && \
|
||||
apk add tini composer git nginx php-fpm && \
|
||||
adduser -D -g 'www' www && \
|
||||
mkdir /www && \
|
||||
chown -R www:www /var/lib/nginx && \
|
||||
chown -R www:www /www
|
||||
|
||||
COPY ./nginx.conf /etc/nginx/nginx.conf
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
|
||||
ENTRYPOINT ["tini", "--", "/entrypoint.sh"]
|
25
README.md
Normal file
25
README.md
Normal file
@ -0,0 +1,25 @@
|
||||
# SamplePHPContainer
|
||||
|
||||
Containing Nginx with FastCGI and Composer.
|
||||
|
||||
# Usage
|
||||
|
||||
## Build
|
||||
|
||||
Clone the repo and build it locally
|
||||
|
||||
docker build --no-cache -f ./Dockerfile --tag sample-php-container
|
||||
|
||||
The container is now ready to be used, navigate to your project folder.
|
||||
|
||||
## Packages
|
||||
|
||||
This will install and or update any packages located in your composer file.
|
||||
|
||||
docker run -dt -e UPDATE=1 -v ./:/www sample-php-container
|
||||
|
||||
## Serving
|
||||
|
||||
Nginx serves files from the `public` directory. Any files Nginx fails to find locally will be redirected to `index.php`.
|
||||
|
||||
docker run -dt -v ./:/www -p 8080:8080 --name sample-php-container-name sample-php-container
|
10
entrypoint.sh
Executable file
10
entrypoint.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
if [ "$UPDATE" = "1" ]
|
||||
then
|
||||
cd /www
|
||||
composer update
|
||||
else
|
||||
nginx
|
||||
/usr/sbin/php-fpm*
|
||||
exec sleep infinity
|
||||
fi
|
38
nginx.conf
Normal file
38
nginx.conf
Normal file
@ -0,0 +1,38 @@
|
||||
user www;
|
||||
worker_processes 1;
|
||||
|
||||
error_log stderr warn;
|
||||
pid /var/run/nginx/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
default_type application/octet-stream;
|
||||
sendfile on;
|
||||
access_log off;
|
||||
keepalive_timeout 3000;
|
||||
|
||||
server_tokens off;
|
||||
|
||||
server {
|
||||
listen 8080;
|
||||
root /www/public;
|
||||
index index.php;
|
||||
server_name localhost;
|
||||
|
||||
error_page 404 /index.php;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.php?$query_string;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
try_files $uri = /;
|
||||
fastcgi_pass 127.0.0.1:9000;
|
||||
include fastcgi.conf;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user