|
1 | 1 | include .env |
2 | 2 |
|
| 3 | +# ============================================================================ |
| 4 | +# Deployment |
| 5 | +# ============================================================================ |
| 6 | + |
| 7 | +.PHONY: set |
| 8 | +set: |
| 9 | + sudo chmod 0755 ~ |
| 10 | + sudo chmod -R a+w ~/data/ |
| 11 | + sudo chmod 0700 ~/.ssh |
| 12 | + sudo chmod -R 0600 ~/.ssh/* |
| 13 | + export EXTERNAL_HOST=${EXTERNAL_HOST} DATA_PATH=${DATA_PATH} PROMETHEUS_PORT=${PROMETHEUS_PORT} GRAFANA_PORT=${GRAFANA_PORT}; \ |
| 14 | + envsubst '$${EXTERNAL_HOST} $${DATA_PATH} $${PROMETHEUS_PORT} $${GRAFANA_PORT}' < infra/nginx/prod.conf > /etc/nginx/sites-enabled/base.conf |
| 15 | + sudo systemctl restart nginx |
| 16 | + sudo certbot --nginx |
| 17 | + |
| 18 | + |
| 19 | +.PHONY: certs |
| 20 | +certs: |
| 21 | + sudo systemctl restart nginx |
| 22 | + sudo certbot --nginx |
| 23 | + |
| 24 | +# ============================================================================ |
| 25 | +# Lifecycle |
| 26 | +# ============================================================================ |
| 27 | + |
3 | 28 | up: |
4 | 29 | docker compose -p base up --build -d |
5 | 30 |
|
6 | 31 | down: |
7 | 32 | docker compose -p base stop |
8 | 33 |
|
| 34 | +# ============================================================================ |
| 35 | +# Status and monitoring |
| 36 | +# ============================================================================ |
| 37 | + |
9 | 38 | status: |
10 | 39 | docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Image}}\t{{.Status}}\t{{.Ports}}" |
11 | 40 |
|
12 | | -mongo: |
13 | | - docker exec -it `docker ps -a | grep base-mongo | cut -d ' ' -f 1` mongosh -u ${MONGO_USER} -p ${MONGO_PASS} |
| 41 | +# ============================================================================ |
| 42 | +# Logs |
| 43 | +# ============================================================================ |
14 | 44 |
|
15 | 45 | # TODO: logs: |
16 | 46 |
|
17 | | -set: |
18 | | - sudo chmod 0755 ~ |
19 | | - sudo chmod -R a+w ~/data/ |
20 | | - sudo chmod 0700 ~/.ssh |
21 | | - sudo chmod -R 0600 ~/.ssh/* |
22 | | - export EXTERNAL_HOST=${EXTERNAL_HOST} DATA_PATH=${DATA_PATH} PROMETHEUS_PORT=${PROMETHEUS_PORT} GRAFANA_PORT=${GRAFANA_PORT}; \ |
23 | | - envsubst '$${EXTERNAL_HOST} $${DATA_PATH} $${PROMETHEUS_PORT} $${GRAFANA_PORT}' < infra/nginx/prod.conf > /etc/nginx/sites-enabled/base.conf |
24 | | - sudo systemctl restart nginx |
25 | | - sudo certbot --nginx |
| 47 | +# ============================================================================ |
| 48 | +# Development tools |
| 49 | +# ============================================================================ |
| 50 | + |
| 51 | +mongo: |
| 52 | + docker exec -it `docker ps -a | grep base-mongo | cut -d ' ' -f 1` mongosh -u ${MONGO_USER} -p ${MONGO_PASS} |
0 commit comments