cleaner this way
This commit is contained in:
		
							
								
								
									
										9
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					# tsys1 docker
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Introduction
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This repo is for containers running on Charles (@ReachableCEO) laptop
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Portmap
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										88
									
								
								upstream/cleanslate/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								upstream/cleanslate/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
				
			|||||||
 | 
					services:
 | 
				
			||||||
 | 
					  database:
 | 
				
			||||||
 | 
					    image: postgres:15
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    container_name: database
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - '${POSTGRES_PORT:-5432}:5432'
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - database:/var/lib/postgresql/data
 | 
				
			||||||
 | 
					    healthcheck:
 | 
				
			||||||
 | 
					      test: [ 'CMD-SHELL', 'pg_isready -U postgres']
 | 
				
			||||||
 | 
					      interval: 10s
 | 
				
			||||||
 | 
					      timeout: 5s
 | 
				
			||||||
 | 
					      retries: 5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  graphql-server:
 | 
				
			||||||
 | 
					    image: hasura/graphql-engine:latest.cli-migrations-v3
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    container_name: graphql-server
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - '${HASURA_PORT:-8080}:8080'
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET}
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_CORS_DOMAIN: https://${NEXT_PUBLIC_HASURA_DOMAIN}
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_DATABASE_URL: postgres://postgres:${POSTGRES_PASSWORD}@database:5432/postgres
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_DEV_MODE: false
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_ENABLE_CONSOLE: true
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_JWT_SECRET: ${HASURA_GRAPHQL_JWT_SECRET}
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - ./migrations:/hasura-migrations
 | 
				
			||||||
 | 
					      - ./metadata:/hasura-metadata
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      database:
 | 
				
			||||||
 | 
					        condition: service_healthy
 | 
				
			||||||
 | 
					    extra_hosts:
 | 
				
			||||||
 | 
					      - 'host.docker.internal:host-gateway'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  authentication-server:
 | 
				
			||||||
 | 
					    image: ghcr.io/successible/cleanslate/authentication-server:latest
 | 
				
			||||||
 | 
					    build:
 | 
				
			||||||
 | 
					      context: .
 | 
				
			||||||
 | 
					      dockerfile: Dockerfile.server
 | 
				
			||||||
 | 
					    pull_policy: ${PULL_POLICY:-always}
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    container_name: authentication-server
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - '${AUTHENTICATION_SERVER_PORT:-3001}:3001'
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET}
 | 
				
			||||||
 | 
					      JWT_SIGNING_SECRET: ${JWT_SIGNING_SECRET}
 | 
				
			||||||
 | 
					      NEXT_PUBLIC_USE_FIREBASE: ${NEXT_PUBLIC_USE_FIREBASE:-false}
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - database
 | 
				
			||||||
 | 
					      - graphql-server
 | 
				
			||||||
 | 
					    extra_hosts:
 | 
				
			||||||
 | 
					      - 'host.docker.internal:host-gateway'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  client:
 | 
				
			||||||
 | 
					    image: ghcr.io/successible/cleanslate/client:latest
 | 
				
			||||||
 | 
					    build:
 | 
				
			||||||
 | 
					      context: .
 | 
				
			||||||
 | 
					      dockerfile: Dockerfile
 | 
				
			||||||
 | 
					      args:
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_FIREBASE_CONFIG=${NEXT_PUBLIC_FIREBASE_CONFIG:-{}}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_LEGAL_LINK=${NEXT_PUBLIC_LEGAL_LINK:-no}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_LOGIN_WITH_APPLE=${NEXT_PUBLIC_LOGIN_WITH_APPLE:-no}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_LOGIN_WITH_FACEBOOK=${NEXT_PUBLIC_LOGIN_WITH_FACEBOOK:-no}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_LOGIN_WITH_GITHUB=${NEXT_PUBLIC_LOGIN_WITH_GITHUB:-no}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_LOGIN_WITH_GOOGLE=${NEXT_PUBLIC_LOGIN_WITH_GOOGLE:-no}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_REACT_SENTRY_DSN=${NEXT_PUBLIC_REACT_SENTRY_DSN:-no}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_USE_FIREBASE=${NEXT_PUBLIC_USE_FIREBASE:-false}
 | 
				
			||||||
 | 
					        - NEXT_PUBLIC_VERSION=${NEXT_PUBLIC_VERSION}
 | 
				
			||||||
 | 
					    pull_policy: ${PULL_POLICY:-always}
 | 
				
			||||||
 | 
					    restart: always
 | 
				
			||||||
 | 
					    container_name: client
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - '${CLIENT_PORT:-3000}:3000'
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - database
 | 
				
			||||||
 | 
					      - graphql-server
 | 
				
			||||||
 | 
					    extra_hosts:
 | 
				
			||||||
 | 
					      - 'host.docker.internal:host-gateway'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					volumes:
 | 
				
			||||||
 | 
					  database:
 | 
				
			||||||
							
								
								
									
										98
									
								
								upstream/endurain/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										98
									
								
								upstream/endurain/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,98 @@
 | 
				
			|||||||
 | 
					services:
 | 
				
			||||||
 | 
					  # frontend logic
 | 
				
			||||||
 | 
					  frontend:
 | 
				
			||||||
 | 
					    container_name: frontend
 | 
				
			||||||
 | 
					    image: ghcr.io/joaovitoriasilva/endurain/frontend:latest
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - MY_APP_BACKEND_PROTOCOL=http # http or https, default is http
 | 
				
			||||||
 | 
					      - MY_APP_BACKEND_HOST=localhost:98 # api host or local ip (example: 192.168.1.10:98), default is localhost:98
 | 
				
			||||||
 | 
					      - MY_APP_STRAVA_CLIENT_ID=changeme
 | 
				
			||||||
 | 
					    # Configure volume if you want to edit the code locally by clomming the repo
 | 
				
			||||||
 | 
					    #volumes:
 | 
				
			||||||
 | 
					    #  - <local_path>/endurain/frontend/app:/app
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - "8080:80" # frontend port, change per your needs
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					  # API logic
 | 
				
			||||||
 | 
					  backend:
 | 
				
			||||||
 | 
					    container_name: backend
 | 
				
			||||||
 | 
					    image: ghcr.io/joaovitoriasilva/endurain/backend:latest
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - DB_PASSWORD=changeme
 | 
				
			||||||
 | 
					      - SECRET_KEY=changeme # openssl rand -hex 32
 | 
				
			||||||
 | 
					      - STRAVA_CLIENT_ID=changeme
 | 
				
			||||||
 | 
					      - STRAVA_CLIENT_SECRET=changeme
 | 
				
			||||||
 | 
					      - STRAVA_AUTH_CODE=changeme
 | 
				
			||||||
 | 
					      - GEOCODES_MAPS_API=changeme
 | 
				
			||||||
 | 
					      - FRONTEND_PROTOCOL=http # default is http
 | 
				
			||||||
 | 
					      - FRONTEND_HOST=localhost:8080 # frontend host or local ip (example: 192.168.1.10:8080), default is localhost:8080
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - "98:80" # API port, change per your needs
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					    #  - <local_path>/endurain/backend/app:/app # Configure volume if you want to edit the code locally by cloning the repo
 | 
				
			||||||
 | 
					      - <local_path>/endurain/backend/user_images:/app/user_images # necessary for user image persistence on container image updates
 | 
				
			||||||
 | 
					      - <local_path>/endurain/backend/files/bulk_import:/app/files/bulk_import # necessary to enable bulk import of activities. Place here your activities files
 | 
				
			||||||
 | 
					      - <local_path>/endurain/backend/files/processed:/app/files/processed # necessary for processed original files persistence on container image updates
 | 
				
			||||||
 | 
					      - <local_path>/endurain/backend/logs:/app/logs # log files for the backend
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - mariadb
 | 
				
			||||||
 | 
					      - jaeger # optional
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  # mysql mariadb logic
 | 
				
			||||||
 | 
					  mariadb:
 | 
				
			||||||
 | 
					    image: mariadb:latest
 | 
				
			||||||
 | 
					    container_name: mariadb
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - MYSQL_ROOT_PASSWORD=changeme
 | 
				
			||||||
 | 
					      - MYSQL_DATABASE=endurain
 | 
				
			||||||
 | 
					      - MYSQL_USER=endurain
 | 
				
			||||||
 | 
					      - MYSQL_PASSWORD=changeme
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - "3306:3306"
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - <local_path>/mariadb:/var/lib/mysql
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Jaeger for opentelemetry - optional
 | 
				
			||||||
 | 
					  # Jaeger is not enabled by default. If you do not need it or want it, you can remove this container
 | 
				
			||||||
 | 
					  jaeger:
 | 
				
			||||||
 | 
					    container_name: jaeger
 | 
				
			||||||
 | 
					    image: jaegertracing/all-in-one:latest
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - PUID=1000
 | 
				
			||||||
 | 
					      - PGID=1000
 | 
				
			||||||
 | 
					      - TZ=Europe/Lisbon
 | 
				
			||||||
 | 
					      - COLLECTOR_ZIPKIN_HOST_PORT=:9411
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 6831:6831/udp
 | 
				
			||||||
 | 
					      - 6832:6832/udp
 | 
				
			||||||
 | 
					      - 5778:5778
 | 
				
			||||||
 | 
					      - 16686:16686
 | 
				
			||||||
 | 
					      - 4317:4317
 | 
				
			||||||
 | 
					      - 4318:4318
 | 
				
			||||||
 | 
					      - 14250:14250
 | 
				
			||||||
 | 
					      - 14268:14268
 | 
				
			||||||
 | 
					      - 14269:14269
 | 
				
			||||||
 | 
					      - 9411:9411
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# phpmyadmin for DB manipulation - optional
 | 
				
			||||||
 | 
					  phpmyadmin:
 | 
				
			||||||
 | 
					    container_name: phpmyadmin
 | 
				
			||||||
 | 
					    image: phpmyadmin
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 81:80
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - PMA_HOST=mariadb
 | 
				
			||||||
 | 
					      - PMA_ARBITRARY=1
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - mariadb
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					networks:
 | 
				
			||||||
 | 
					  default:
 | 
				
			||||||
 | 
					    external: true
 | 
				
			||||||
 | 
					    name: backend_network
 | 
				
			||||||
							
								
								
									
										36
									
								
								upstream/habitica/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								upstream/habitica/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
				
			|||||||
 | 
					version: "3"
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  client:
 | 
				
			||||||
 | 
					    build: .
 | 
				
			||||||
 | 
					    networks:
 | 
				
			||||||
 | 
					      - habitica
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - BASE_URL=http://server:3000
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					        - "8080:8080"
 | 
				
			||||||
 | 
					    command: ["npm", "run", "client:dev"]
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - server
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  server:
 | 
				
			||||||
 | 
					    build: .
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - "3000:3000"
 | 
				
			||||||
 | 
					    networks:
 | 
				
			||||||
 | 
					      - habitica
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - NODE_DB_URI=mongodb://mongo/habitrpg
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - mongo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  mongo:
 | 
				
			||||||
 | 
					    image: mongo:3.6
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - "27017:27017"
 | 
				
			||||||
 | 
					    networks:
 | 
				
			||||||
 | 
					      - habitica
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					networks:
 | 
				
			||||||
 | 
					  habitica:
 | 
				
			||||||
 | 
					    driver: bridge
 | 
				
			||||||
							
								
								
									
										8
									
								
								upstream/reactive-resume/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								upstream/reactive-resume/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					services:
 | 
				
			||||||
 | 
					  resume-matcher:
 | 
				
			||||||
 | 
					      image : resume-matcher
 | 
				
			||||||
 | 
					      build:
 | 
				
			||||||
 | 
					        context: ./
 | 
				
			||||||
 | 
					        dockerfile : build.dockerfile
 | 
				
			||||||
 | 
					      ports:
 | 
				
			||||||
 | 
					        - 80:8501
 | 
				
			||||||
							
								
								
									
										65
									
								
								upstream/tube-archivist/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								upstream/tube-archivist/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,65 @@
 | 
				
			|||||||
 | 
					version: '3.5'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  tubearchivist:
 | 
				
			||||||
 | 
					    container_name: tubearchivist
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					    image: bbilly1/tubearchivist
 | 
				
			||||||
 | 
					    ports:
 | 
				
			||||||
 | 
					      - 8000:8000
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - media:/youtube
 | 
				
			||||||
 | 
					      - cache:/cache
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - ES_URL=http://archivist-es:9200     # needs protocol e.g. http and port
 | 
				
			||||||
 | 
					      - REDIS_HOST=archivist-redis          # don't add protocol
 | 
				
			||||||
 | 
					      - HOST_UID=1000
 | 
				
			||||||
 | 
					      - HOST_GID=1000
 | 
				
			||||||
 | 
					      - TA_HOST=tubearchivist.local         # set your host name
 | 
				
			||||||
 | 
					      - TA_USERNAME=tubearchivist           # your initial TA credentials
 | 
				
			||||||
 | 
					      - TA_PASSWORD=verysecret              # your initial TA credentials
 | 
				
			||||||
 | 
					      - ELASTIC_PASSWORD=verysecret         # set password for Elasticsearch
 | 
				
			||||||
 | 
					      - TZ=America/New_York                 # set your time zone
 | 
				
			||||||
 | 
					    healthcheck:
 | 
				
			||||||
 | 
					      test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
 | 
				
			||||||
 | 
					      interval: 2m
 | 
				
			||||||
 | 
					      timeout: 10s
 | 
				
			||||||
 | 
					      retries: 3
 | 
				
			||||||
 | 
					      start_period: 30s
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - archivist-es
 | 
				
			||||||
 | 
					      - archivist-redis
 | 
				
			||||||
 | 
					  archivist-redis:
 | 
				
			||||||
 | 
					    image: redis/redis-stack-server
 | 
				
			||||||
 | 
					    container_name: archivist-redis
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					    expose:
 | 
				
			||||||
 | 
					      - "6379"
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - redis:/data
 | 
				
			||||||
 | 
					    depends_on:
 | 
				
			||||||
 | 
					      - archivist-es
 | 
				
			||||||
 | 
					  archivist-es:
 | 
				
			||||||
 | 
					    image: bbilly1/tubearchivist-es         # only for amd64, or use official es 8.14.3
 | 
				
			||||||
 | 
					    container_name: archivist-es
 | 
				
			||||||
 | 
					    restart: unless-stopped
 | 
				
			||||||
 | 
					    environment:
 | 
				
			||||||
 | 
					      - "ELASTIC_PASSWORD=verysecret"       # matching Elasticsearch password
 | 
				
			||||||
 | 
					      - "ES_JAVA_OPTS=-Xms1g -Xmx1g"
 | 
				
			||||||
 | 
					      - "xpack.security.enabled=true"
 | 
				
			||||||
 | 
					      - "discovery.type=single-node"
 | 
				
			||||||
 | 
					      - "path.repo=/usr/share/elasticsearch/data/snapshot"
 | 
				
			||||||
 | 
					    ulimits:
 | 
				
			||||||
 | 
					      memlock:
 | 
				
			||||||
 | 
					        soft: -1
 | 
				
			||||||
 | 
					        hard: -1
 | 
				
			||||||
 | 
					    volumes:
 | 
				
			||||||
 | 
					      - es:/usr/share/elasticsearch/data    # check for permission error when using bind mount, see readme
 | 
				
			||||||
 | 
					    expose:
 | 
				
			||||||
 | 
					      - "9200"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					volumes:
 | 
				
			||||||
 | 
					  media:
 | 
				
			||||||
 | 
					  cache:
 | 
				
			||||||
 | 
					  redis:
 | 
				
			||||||
 | 
					  es:
 | 
				
			||||||
							
								
								
									
										1
									
								
								upstream/wger
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								upstream/wger
									
									
									
									
									
										Submodule
									
								
							 Submodule upstream/wger added at 3356235709
									
								
							
							
								
								
									
										24
									
								
								utility/metrics/metrics.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								utility/metrics/metrics.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#i hope i can make this work
 | 
				
			||||||
 | 
					# it runs and it works in offstage but not here...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#hmm this worked in the other account..
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Select an existing docker image tag
 | 
				
			||||||
 | 
					VERSION=latest
 | 
				
			||||||
 | 
					# Path to configured `settings.json`
 | 
				
			||||||
 | 
					SETTINGS=/path/to/settings.json
 | 
				
			||||||
 | 
					# Port used internally (use the same one than in `settings.json`)
 | 
				
			||||||
 | 
					SERVICE_PORT=3000
 | 
				
			||||||
 | 
					# Port to publish
 | 
				
			||||||
 | 
					PUBLISHED_PORT=2002
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					docker run \
 | 
				
			||||||
 | 
					    -d \
 | 
				
			||||||
 | 
					    --rm \
 | 
				
			||||||
 | 
					    --name metrics \
 | 
				
			||||||
 | 
					    --entrypoint="" \
 | 
				
			||||||
 | 
					    -p=127.0.0.1:$PUBLISHED_PORT:$SERVICE_PORT \
 | 
				
			||||||
 | 
					    --volume=$SETTINGS:/metrics/settings.json \
 | 
				
			||||||
 | 
					    ghcr.io/lowlighter/metrics:$VERSION npm start
 | 
				
			||||||
							
								
								
									
										225
									
								
								utility/metrics/settings.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										225
									
								
								utility/metrics/settings.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,225 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					  "//": "Example of configuration for metrics web instance",
 | 
				
			||||||
 | 
					  "//": "====================================================================",
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  "token": "A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",          "//": "GitHub Personal Token (required)",
 | 
				
			||||||
 | 
					  "modes": ["embed", "insights"],       "//": "Web instance enabled modes",
 | 
				
			||||||
 | 
					  "restricted": [],                     "//": "Authorized users (empty to disable)",
 | 
				
			||||||
 | 
					  "maxusers": 0,                        "//": "Maximum users, (0 to disable)",
 | 
				
			||||||
 | 
					  "cached": 3600000,                    "//": "Cache time rendered metrics (0 to disable)",
 | 
				
			||||||
 | 
					  "ratelimiter": null,                  "//": "Rate limiter (see express-rate-limit documentation)",
 | 
				
			||||||
 | 
					  "port": 3000,                         "//": "Listening port",
 | 
				
			||||||
 | 
					  "optimize": true,                     "//": "SVG optimization",
 | 
				
			||||||
 | 
					  "debug": false,                       "//": "Debug logs",
 | 
				
			||||||
 | 
					  "debug.headless": false,              "//": "Debug puppeteer process",
 | 
				
			||||||
 | 
					  "mocked": false,                      "//": "Use mocked data instead of live APIs (use 'force' to use mocked token even if real token are defined)",
 | 
				
			||||||
 | 
					  "repositories": 100,                  "//": "Number of repositories to use",
 | 
				
			||||||
 | 
					  "padding": ["0", "8 + 11%"],          "//": "Image padding (default)",
 | 
				
			||||||
 | 
					  "outputs": ["svg", "png", "json"],    "//": "Image output formats (empty to enable all)",
 | 
				
			||||||
 | 
					  "hosted": {
 | 
				
			||||||
 | 
					    "by": "ReachableCEO Dev Workstation",                           "//": "Web instance host (displayed in footer)",
 | 
				
			||||||
 | 
					    "link": "https://www.reachableceo.com",                         "//": "Web instance host link (displayed in footer)"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "oauth":{
 | 
				
			||||||
 | 
					    "id": null,                         "//": "GitHub OAUTH client id",
 | 
				
			||||||
 | 
					    "secret": null,                     "//": "GitHub OAUTH client secret",
 | 
				
			||||||
 | 
					    "url":"https://example.com",        "//": "GitHub OAUTH callback url (must be the same as the web instance host)"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "api":{
 | 
				
			||||||
 | 
					    "rest": null,                       "//": "GitHub REST API custom endpoint",
 | 
				
			||||||
 | 
					    "graphql": null,                    "//": "GitHub GraphQL API custom endpoint"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "control":{
 | 
				
			||||||
 | 
					    "token": null,                      "//": "Control token (can be used by external services to perform actions on instance, such as stopping it for redeploys)"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "community": {
 | 
				
			||||||
 | 
					    "templates": [],                    "//": "Additional community templates to setup"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "templates": {
 | 
				
			||||||
 | 
					    "default": "classic",               "//": "Default template",
 | 
				
			||||||
 | 
					    "enabled": [],                      "//": "Enabled templates (empty to enable all)"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "extras": {
 | 
				
			||||||
 | 
					    "default": false,                   "//": "Default extras state (advised to let 'false' unless in debug mode)",
 | 
				
			||||||
 | 
					    "features": false,                  "//": "Enable extra features (advised to let 'false' on web instances), see below for supported features",
 | 
				
			||||||
 | 
					                                        "//": "________________________________________________________________________",
 | 
				
			||||||
 | 
					                                        "//": "metrics.setup.community.templates | Allow community templates download",
 | 
				
			||||||
 | 
					                                        "//": "metrics.setup.community.presets   | Allow community presets usage",
 | 
				
			||||||
 | 
					                                        "//": "metrics.api.github.overuse        | Allow GitHub API intensive requests",
 | 
				
			||||||
 | 
					                                        "//": "metrics.api.*                     | Allow use of external API requests",
 | 
				
			||||||
 | 
					                                        "//": "metrics.cpu.overuse               | Allow CPU intensive requests",
 | 
				
			||||||
 | 
					                                        "//": "metrics.run.tempdir               | Allow access to temporary directory (I/O operations may be performed)",
 | 
				
			||||||
 | 
					                                        "//": "metrics.run.git                   | Allow to run git",
 | 
				
			||||||
 | 
					                                        "//": "metrics.run.licensed              | Allow to run licensed",
 | 
				
			||||||
 | 
					                                        "//": "metrics.run.user.cmd              | Allow to run ANY command by user (USE WITH CAUTION!)",
 | 
				
			||||||
 | 
					                                        "//": "metrics.run.puppeteer.scrapping   | Allow to run puppeteer to scrape data",
 | 
				
			||||||
 | 
					                                        "//": "metrics.run.puppeteer.user.css    | Allow to run CSS by user during puppeteer render",
 | 
				
			||||||
 | 
					                                        "//": "metrics.run.puppeteer.user.js     | Allow to run JavaScript by user during puppeteer render",
 | 
				
			||||||
 | 
					                                        "//": "metrics.npm.optional.*            | Allow use of specified dependency",
 | 
				
			||||||
 | 
					                                        "//": "________________________________________________________________________",
 | 
				
			||||||
 | 
					                                        "//": "Additional extra features when user is logged with GitHub",
 | 
				
			||||||
 | 
					    "logged": [
 | 
				
			||||||
 | 
					      "metrics.api.github.overuse"
 | 
				
			||||||
 | 
					    ]
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "plugins.default": false,             "//": "Default plugin state (advised to let 'false' unless in debug mode)",
 | 
				
			||||||
 | 
					  "plugins": {                          "//": "Global plugin configuration",
 | 
				
			||||||
 | 
					    "isocalendar":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable isocalendar plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "languages":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable languages plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "stargazers":{
 | 
				
			||||||
 | 
					      "worldmap.token": null,           "//": "Stargazers worldmap token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable stargazers plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "lines":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable lines plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "topics":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable topics plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "stars":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable stars plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "licenses":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable licenses plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "habits":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable habits plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "contributors":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable contributors plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "followup":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable followup plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "reactions":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable reactions plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "people":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable people plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "sponsorships":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable sponsorships plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "sponsors":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable sponsors plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "repositories":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable repositories plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "discussions":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable discussions plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "starlists":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable starlists plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "calendar":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable calendar plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "achievements":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable achievements plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "notable":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable notable plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "activity":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable activity plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "traffic":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable traffic plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "code":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable code plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "gists":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable gists plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "projects":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable projects plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "introduction":{
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable introduction plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "skyline":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable skyline plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "support":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable support plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "pagespeed":{
 | 
				
			||||||
 | 
					      "token": "PageSpeed token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable pagespeed plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "tweets":{
 | 
				
			||||||
 | 
					      "token": "Twitter API token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable tweets plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "stackoverflow":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable stackoverflow plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "anilist":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable aniList plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "music":{
 | 
				
			||||||
 | 
					      "token": "Music provider token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable music plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "posts":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable posts plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "rss":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable rss plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "wakatime":{
 | 
				
			||||||
 | 
					      "token": "664dd8b2-b73a-4f31-82ef-96ed424814d2",
 | 
				
			||||||
 | 
					      "enabled": true,                 "//": "Enable wakatime plugin"
 | 
				
			||||||
 | 
					      "url": "http://localhost:2001/api",
 | 
				
			||||||
 | 
					      "days": 7,
 | 
				
			||||||
 | 
					      "sections": "time, projects, projects-graphs",
 | 
				
			||||||
 | 
					      "limit": 4,
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "leetcode":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable leetcode plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "steam":{
 | 
				
			||||||
 | 
					      "token": "Steam token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable steam plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "16personalities":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable 16personalities plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "chess":{
 | 
				
			||||||
 | 
					      "token": "Chess platform token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable chess plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "crypto":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable crypto plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "fortune":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable fortune plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "nightscout":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable nightscout plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "poopmap":{
 | 
				
			||||||
 | 
					      "token": "PoopMap API token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable poopmap plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "screenshot":{
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable screenshot plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "splatoon":{
 | 
				
			||||||
 | 
					      "token": "Splatnet token",
 | 
				
			||||||
 | 
					      "statink.token": null,            "//": "stat.ink token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable splatoon plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "stock":{
 | 
				
			||||||
 | 
					      "token": "Yahoo Finance token",
 | 
				
			||||||
 | 
					      "enabled": false,                 "//": "Enable stock plugin"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "//": ""
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										9
									
								
								utility/wakaapi/wakaapi.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								utility/wakaapi/wakaapi.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					docker run -d \
 | 
				
			||||||
 | 
					  -p 2001:3000 \
 | 
				
			||||||
 | 
					  -e "WAKAPI_PASSWORD_SALT=1234" \
 | 
				
			||||||
 | 
					  -v wakapi-data-tsys:/data \
 | 
				
			||||||
 | 
					  --restart=always \
 | 
				
			||||||
 | 
					  --name wakaapi-tsys \
 | 
				
			||||||
 | 
					  ghcr.io/muety/wakapi:latest
 | 
				
			||||||
		Reference in New Issue
	
	Block a user