Geoblocking
We use nginx geoblocking to restrict access from within nobreakspace. Edit nginx/default.conf
(change default 1 to default 0) during development to gain access.
Build
Get all submodules:
git clone --recurse-submodules https://git.chaotikum.org/chaotikum/infra/icebox-dockerized.git
or if you already have this repo cloned:
git submodule init
git submodule update
Build all docker containers
docker-compose build
Database management
Data is stored in an external volume called ìcebox-data
. It needs to be created if you're starting from scratch.
docker volume create icebox-data
Start the database
docker-compose up -d database
Import database dump
docker container exec -i $(docker-compose ps -q database) psql -U icebox icebox < icebox.sql
Create a database dump
docker-compose exec -T database pg_dump -U icebox icebox > icebox.sql
Be careful not to commit icebox.sql
by accident if you play around!
If you need to recreate the databse, you can use jake db:create
. Refer to icebox documentation for more information about this.
Start and stop
This configuration starts three services:
- Webinterface on http://localhost:80
- Alias service on http://localhost:8085
- API backend on http://localhost:8081
Just run
docker-compose up
or in the background
docker-compose up -d
or stop it again
docker-compose down