diff --git a/memos/docker-compose.yml b/memos/docker-compose.yml new file mode 100644 index 0000000..8f5e546 --- /dev/null +++ b/memos/docker-compose.yml @@ -0,0 +1,48 @@ +services: + memos-db: + image: postgres:17-alpine + container_name: memos-db + restart: unless-stopped + environment: + TZ: ${TZ} + POSTGRES_DB: ${MEMOS_DB_NAME} + POSTGRES_USER: ${MEMOS_DB_USER} + POSTGRES_PASSWORD: ${MEMOS_DB_PASSWORD} + volumes: + - /opt/memos/postgres:/var/lib/postgresql/data:Z + healthcheck: + test: ["CMD-SHELL", "pg_isready -U ${MEMOS_DB_USER} -d ${MEMOS_DB_NAME}"] + interval: 10s + timeout: 5s + retries: 10 + start_period: 20s + networks: + - memos_internal + + memos: + image: neosmemo/memos:stable + pull_policy: always + container_name: memos + restart: unless-stopped + depends_on: + memos-db: + condition: service_healthy + environment: + MEMOS_PORT: 5230 + MEMOS_DATA: /var/opt/memos + MEMOS_DRIVER: postgres + MEMOS_DSN: postgresql://${MEMOS_DB_USER}:${MEMOS_DB_PASSWORD}@memos-db:5432/${MEMOS_DB_NAME}?sslmode=disable + MEMOS_INSTANCE_URL: https://${MEMOS_DOMAIN} + volumes: + - /opt/memos/data:/var/opt/memos:Z + networks: + - memos_internal + - proxy + labels: + traefik.http.services.memos.loadbalancer.server.port: "5230" + +networks: + memos_internal: + driver: bridge + proxy: + external: true diff --git a/memos/stack.env b/memos/stack.env new file mode 100644 index 0000000..9b3a321 --- /dev/null +++ b/memos/stack.env @@ -0,0 +1,5 @@ +TZ=Europe/Madrid +MEMOS_DOMAIN=memos.sherlockhomeless.net +MEMOS_DB_NAME=memos +MEMOS_DB_USER=memos +MEMOS_DB_PASSWORD=CAMBIAME_db_super_largo_y_unico