diff --git a/Dockerfile b/Dockerfile index a8dfbcd..9393472 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,6 +11,7 @@ COPY --from=builder /usr/local/cargo/bin/request-mirror /usr/local/bin/request-m COPY ./templates /templates COPY .env.docker /.env ENV ROCKET_ADDRESS=0.0.0.0 +ENV ROCKET_PORT=80 ENV ROCKET_ENV=production -EXPOSE 8000 +EXPOSE 80 ENTRYPOINT diesel migration run --database-url $DATABASE_URL --migration-dir /migrations && request-mirror \ No newline at end of file diff --git a/deploy.sh b/deploy.sh index 1f8aaca..e91b7d8 100644 --- a/deploy.sh +++ b/deploy.sh @@ -18,4 +18,4 @@ diesel migration run # Build and start request-mirror docker build . -t raspberrypi99/request-mirror -docker run -d --rm -p 8000:8000 --name request-mirror --net postgres-net raspberrypi99/request-mirror \ No newline at end of file +docker run -d --rm -p 80:8000 --name request-mirror --net postgres-net raspberrypi99/request-mirror \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 11a9829..87fe2f8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -14,7 +14,7 @@ services: request-mirror: image: raspberrypi99/request-mirror:latest ports: - - 80:8000 + - 80:80 environment: - DATABASE_URL=postgres://postgres:Password123@postgres/request_mirror_db depends_on: @@ -31,4 +31,4 @@ networks: - subnet: 172.16.0.0/24 volumes: - db-data: \ No newline at end of file + db-data: diff --git a/migrations/00000000000000_diesel_initial_setup/down.sql b/migrations/00000000000000_diesel_initial_setup/down.sql new file mode 100644 index 0000000..a9f5260 --- /dev/null +++ b/migrations/00000000000000_diesel_initial_setup/down.sql @@ -0,0 +1,6 @@ +-- This file was automatically created by Diesel to setup helper functions +-- and other internal bookkeeping. This file is safe to edit, any future +-- changes will be added to existing projects as new migrations. + +DROP FUNCTION IF EXISTS diesel_manage_updated_at(_tbl regclass); +DROP FUNCTION IF EXISTS diesel_set_updated_at(); diff --git a/migrations/00000000000000_diesel_initial_setup/up.sql b/migrations/00000000000000_diesel_initial_setup/up.sql new file mode 100644 index 0000000..d68895b --- /dev/null +++ b/migrations/00000000000000_diesel_initial_setup/up.sql @@ -0,0 +1,36 @@ +-- This file was automatically created by Diesel to setup helper functions +-- and other internal bookkeeping. This file is safe to edit, any future +-- changes will be added to existing projects as new migrations. + + + + +-- Sets up a trigger for the given table to automatically set a column called +-- `updated_at` whenever the row is modified (unless `updated_at` was included +-- in the modified columns) +-- +-- # Example +-- +-- ```sql +-- CREATE TABLE users (id SERIAL PRIMARY KEY, updated_at TIMESTAMP NOT NULL DEFAULT NOW()); +-- +-- SELECT diesel_manage_updated_at('users'); +-- ``` +CREATE OR REPLACE FUNCTION diesel_manage_updated_at(_tbl regclass) RETURNS VOID AS $$ +BEGIN + EXECUTE format('CREATE TRIGGER set_updated_at BEFORE UPDATE ON %s + FOR EACH ROW EXECUTE PROCEDURE diesel_set_updated_at()', _tbl); +END; +$$ LANGUAGE plpgsql; + +CREATE OR REPLACE FUNCTION diesel_set_updated_at() RETURNS trigger AS $$ +BEGIN + IF ( + NEW IS DISTINCT FROM OLD AND + NEW.updated_at IS NOT DISTINCT FROM OLD.updated_at + ) THEN + NEW.updated_at := current_timestamp; + END IF; + RETURN NEW; +END; +$$ LANGUAGE plpgsql;