kopia lustrzana https://github.com/simonw/datasette
New live demo with Apache proxying, refs #1522
rodzic
ff0dd4da38
commit
c76bbd4066
|
@ -0,0 +1,42 @@
|
|||
FROM python:3-alpine
|
||||
|
||||
RUN apk add --no-cache \
|
||||
apache2 \
|
||||
apache2-proxy \
|
||||
bash
|
||||
|
||||
RUN pip install datasette
|
||||
|
||||
ENV TINI_VERSION v0.18.0
|
||||
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini-static /tini
|
||||
RUN chmod +x /tini
|
||||
|
||||
# Append this to the end of the default httpd.conf file
|
||||
RUN echo $'ServerName localhost\n\
|
||||
\n\
|
||||
<Proxy *>\n\
|
||||
Order deny,allow\n\
|
||||
Allow from all\n\
|
||||
</Proxy>\n\
|
||||
\n\
|
||||
ProxyPass /prefix/ http://localhost:8001/\n\
|
||||
Header add X-Proxied-By "Apache2"' >> /etc/apache2/httpd.conf
|
||||
|
||||
RUN echo $'<a href="/prefix/">Datasette</a>' > /var/www/localhost/htdocs/index.html
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
ADD https://latest.datasette.io/fixtures.db /app/fixtures.db
|
||||
|
||||
RUN echo $'#!/usr/bin/env bash\n\
|
||||
set -e\n\
|
||||
\n\
|
||||
httpd -D FOREGROUND &\n\
|
||||
datasette fixtures.db --setting base_url "/prefix/" -h 0.0.0.0 -p 8001 &\n\
|
||||
\n\
|
||||
wait -n' > /app/start.sh
|
||||
|
||||
RUN chmod +x /app/start.sh
|
||||
|
||||
EXPOSE 80
|
||||
ENTRYPOINT ["/tini", "--", "/app/start.sh"]
|
|
@ -0,0 +1,5 @@
|
|||
# Datasette running behind an Apache proxy
|
||||
|
||||
See also [Running Datasette behind a proxy](https://docs.datasette.io/en/latest/deploying.html#running-datasette-behind-a-proxy)
|
||||
|
||||
This live demo is running at https://apache-proxy-demo.datasette.io/
|
|
@ -0,0 +1,13 @@
|
|||
#!/bin/bash
|
||||
# https://til.simonwillison.net/cloudrun/ship-dockerfile-to-cloud-run
|
||||
|
||||
NAME="datasette-apache-proxy-demo"
|
||||
PROJECT=$(gcloud config get-value project)
|
||||
IMAGE="gcr.io/$PROJECT/$NAME"
|
||||
|
||||
gcloud builds submit --tag $IMAGE
|
||||
gcloud run deploy \
|
||||
--allow-unauthenticated \
|
||||
--platform=managed \
|
||||
--image $IMAGE $NAME \
|
||||
--port 80
|
Ładowanie…
Reference in New Issue