Compare commits
3 Commits
8c65ce13c5
...
f5c9570926
| Author | SHA1 | Date | |
|---|---|---|---|
| f5c9570926 | |||
| de1234f9d4 | |||
| ccd4ee2346 |
27
Dockerfile
27
Dockerfile
@@ -1,29 +1,28 @@
|
|||||||
FROM python
|
FROM python:latest
|
||||||
WORKDIR /code
|
WORKDIR /code
|
||||||
COPY . .
|
|
||||||
|
|
||||||
# declare var
|
# declare var
|
||||||
ARG ENV
|
ARG ENV
|
||||||
ARG BOOK_UID
|
ARG BOOK_UID
|
||||||
ARG BOOK_GID
|
ARG BOOK_GID
|
||||||
|
|
||||||
RUN groupadd -g ${BOOK_GID} pybook && useradd -m -u ${BOOK_UID} -g ${BOOK_GID} pybook
|
RUN apt-get update && apt-get install -y sudo && apt-get -y upgrade
|
||||||
# in prod, /code will be owned by root and gunicorn logs wont work, so chg to pybook
|
|
||||||
RUN if [ "$ENV" = "production" ]; then \
|
|
||||||
chown -R pybook:pybook /code; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
RUN wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
|
RUN wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get install -y ./google-chrome-stable_current_amd64.deb && \
|
apt-get install -y ./google-chrome-stable_current_amd64.deb && \
|
||||||
apt-get install -f -y && \
|
apt-get install -f -y && \
|
||||||
apt-get install sudo && \
|
rm -f ./google-chrome-stable_current_amd64.deb && \
|
||||||
apt-get upgrade -y && \
|
|
||||||
rm ./google-chrome-stable_current_amd64.deb && \
|
|
||||||
apt-get clean
|
apt-get clean
|
||||||
|
|
||||||
RUN pip3 install --upgrade pip
|
# just copy requirements for now, helps with build optimisation
|
||||||
RUN pip3 install -U -r requirements.txt
|
COPY requirements.txt .
|
||||||
|
RUN pip3 install --upgrade pip && pip3 install -r requirements.txt
|
||||||
|
|
||||||
|
RUN groupadd -g ${BOOK_GID} pybook && useradd -m -u ${BOOK_UID} -g ${BOOK_GID} pybook
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
# in prod, /code will be owned by root and gunicorn logs wont work, so chg to pybook
|
||||||
|
RUN chown -R pybook:pybook /code
|
||||||
RUN cat /dev/urandom | head -c 50 | md5sum | head -c 32 > /code/.sk
|
RUN cat /dev/urandom | head -c 50 | md5sum | head -c 32 > /code/.sk
|
||||||
RUN chmod 600 .sk
|
RUN chmod 600 .sk
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
|||||||
16
README
16
README
@@ -16,27 +16,27 @@ pip3 install --user flask sqlalchemy flask-sqlalchemy flask-marshmallow SQLAlche
|
|||||||
########################################################### FOR local RUN:
|
########################################################### FOR local RUN:
|
||||||
|
|
||||||
# run a DEV version by:
|
# run a DEV version by:
|
||||||
FLASK_APP=main FLASK_ENV=development flask run --host=192.168.0.2
|
FLASK_APP=main FLASK_ENV=development flask run --host=mara.ddp.net
|
||||||
|
|
||||||
### to make a new PROD copy..
|
### to make a new PROD copy..
|
||||||
sudo docker-compose -f /srv/docker/config/docker-compose.yml stop bookdb_web
|
sudo docker compose -f /srv/docker/config/docker-compose.yml stop bookdb_web
|
||||||
sudo docker-compose -f /srv/docker/config/docker-compose.yml rm bookdb_web
|
sudo docker compose -f /srv/docker/config/docker-compose.yml rm bookdb_web
|
||||||
sudo docker-compose -f /srv/docker/config/docker-compose.yml build bookdb_web
|
sudo docker compose -f /srv/docker/config/docker-compose.yml build bookdb_web
|
||||||
sudo docker-compose -f /srv/docker/config/docker-compose.yml up bookdb_web
|
sudo docker compose -f /srv/docker/config/docker-compose.yml up bookdb_web
|
||||||
|
|
||||||
|
|
||||||
########################################################## Remember:
|
########################################################## Remember:
|
||||||
MUST use form.errors when we have a validator that is fancier than not empty (year_published in book and num_books in series SO FAR)
|
MUST use form.errors when we have a validator that is fancier than not empty (year_published in book and num_books in series SO FAR)
|
||||||
|
|
||||||
##### make backup / export:
|
##### make backup / export:
|
||||||
ddp@mara:/srv/docker/container/bookdb_dev$ sudo docker exec -it bookdb_dev bash
|
ddp@mara:/srv/docker/container/bookdb_dev$ docker exec -it bookdb_dev bash
|
||||||
root@5eff50ab6cdc:/# pg_dump --user=ddp library > /docker-entrypoint-initdb.d/tables.sql
|
root@5eff50ab6cdc:/# pg_dump --user=ddp library > /docker-entrypoint-initdb.d/tables.sql
|
||||||
|
|
||||||
#### if we want to upgrade postgres, do this extra step
|
#### if we want to upgrade postgres, do this extra step
|
||||||
sudo docker-compose -f /srv/docker/config/docker-compose.yml stop bookdb_dev
|
docker compose -f /srv/docker/config/docker-compose.yml stop bookdb_dev
|
||||||
sudo rm -rf /srv/docker/container/bookdb_dev/data
|
sudo rm -rf /srv/docker/container/bookdb_dev/data
|
||||||
#tweak docker-compose.yml to upgrade PG...
|
#tweak docker-compose.yml to upgrade PG...
|
||||||
sudo docker-compose -f /srv/docker/config/docker-compose.yml up -d bookdb_dev
|
docker compose -f /srv/docker/config/docker-compose.yml up -d bookdb_dev
|
||||||
|
|
||||||
########################################################### TODOS (next 29):
|
########################################################### TODOS (next 29):
|
||||||
Validation:
|
Validation:
|
||||||
|
|||||||
2
main.py
2
main.py
@@ -45,7 +45,7 @@ app.config['LDAP_HOST'] = 'mara.ddp.net'
|
|||||||
app.config['LDAP_BASE_DN'] = 'dc=depaoli,dc=id,dc=au'
|
app.config['LDAP_BASE_DN'] = 'dc=depaoli,dc=id,dc=au'
|
||||||
app.config['LDAP_USER_DN'] = 'ou=users'
|
app.config['LDAP_USER_DN'] = 'ou=users'
|
||||||
app.config['LDAP_GROUP_DN'] = 'ou=groups'
|
app.config['LDAP_GROUP_DN'] = 'ou=groups'
|
||||||
app.config['LDAP_USER_RDN_ATTR'] = 'cn'
|
app.config['LDAP_USER_RDN_ATTR'] = 'uid'
|
||||||
app.config['LDAP_USER_LOGIN_ATTR'] = 'uid'
|
app.config['LDAP_USER_LOGIN_ATTR'] = 'uid'
|
||||||
app.config['LDAP_BIND_USER_DN'] = None
|
app.config['LDAP_BIND_USER_DN'] = None
|
||||||
app.config['LDAP_BIND_USER_PASSWORD'] = None
|
app.config['LDAP_BIND_USER_PASSWORD'] = None
|
||||||
|
|||||||
Reference in New Issue
Block a user