Skip to content

Instantly share code, notes, and snippets.

@lionep
Created June 30, 2023 13:37
Show Gist options
  • Save lionep/1d0444603a57bf7de37cbf941a5ca94a to your computer and use it in GitHub Desktop.
Save lionep/1d0444603a57bf7de37cbf941a5ca94a to your computer and use it in GitHub Desktop.
OneUptime clean docker-compose
version: '3.7'
services:
haraka:
image: oneuptime/haraka:release
expose:
- 2525
networks:
- internal
restart: always
env_file:
- ./Haraka/.env
redis:
image: redis:7.0.3
networks:
- internal
restart: always
expose:
- 6379
command: redis-server --requirepass "5cfa265ac5343eb35ed4130d"
env_file:
- ./Redis/.env
clickhouse:
image: clickhouse/clickhouse-server:23.2
networks:
- internal
restart: always
env_file:
- ./Clickhouse/.env
expose:
- 8123
- 9000
- 9440
- 9009
volumes:
- clickhouse:/var/lib/clickhouse/
postgres:
image: postgres:latest
networks:
- internal
restart: always
env_file:
- ./Postgres/.env
expose:
- 5432
volumes:
- ./volumes/postgres:/var/lib/postgresql/data
notification:
image: oneuptime/notification:release
expose:
- 3191
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./Notification/.env
depends_on:
- haraka
accounts:
image: oneuptime/accounts:release
expose:
- 3003
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonUI/.env
- ./Accounts/.env
depends_on:
- identity
dashboard:
image: oneuptime/dashboard:release
expose:
- 3009
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonUI/.env
- ./Dashboard/.env
depends_on:
- identity
- accounts
status-page:
image: oneuptime/status-page:release
expose:
- 3105 # HTTP UI Port
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonUI/.env
- ./StatusPage/.env
depends_on:
- accounts
- dashboard-api
dashboard-api:
image: oneuptime/dashboard-api:release
expose:
- 3002
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./DashboardAPI/.env
depends_on:
- redis
- postgres
- notification
workflow:
image: oneuptime/workflow:release
expose:
- 3099
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./Workflow/.env
depends_on:
- redis
- postgres
- notification
workers:
image: oneuptime/workers:release
expose:
- 3452
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./Workers/.env
depends_on:
- postgres
- notification
volumes:
- ./Certs:/usr/src/Certs
probe-1:
image: oneuptime/probe:release
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./Probe/.env
environment:
- PROBE_NAME=OneUptime
- PROBE_DESCRIPTION=Global
- PROBE_KEY=45ea591dfdde4e44100175bd
- PROBE_API_URL=http://probe-api:3400
depends_on:
- probe-api
volumes:
- ./Certs:/usr/src/Certs
identity:
image: oneuptime/identity:release
expose:
- 3087
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./Identity/.env
depends_on:
- redis
- postgres
- notification
probe-api:
image: oneuptime/probe-api:release
expose:
- 3400
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./ProbeAPI/.env
depends_on:
- redis
- postgres
- notification
file:
image: oneuptime/file:release
expose:
- 3125
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./File/.env
depends_on:
- postgres
home:
image: oneuptime/home:release
expose:
- 1444
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./Home/.env
api-reference:
image: oneuptime/api-reference:release
expose:
- 1445
networks:
- internal
restart: always
env_file:
- ./Common/.env
- ./CommonServer/.env
- ./ApiReference/.env
nginx:
image: oneuptime/nginx:release
depends_on:
- identity
- accounts
- dashboard-api
- dashboard
- home
- notification
restart: always
networks:
- internal
ports:
- '80:80'
- '443:443'
volumes:
- ./Nginx/default.conf:/etc/nginx/conf.d/default.conf
- ./Certs:/etc/nginx/certs
networks:
internal:
@Akitash
Copy link

Akitash commented Jul 18, 2023

I suggest remove the redis password publicly

command: redis-server --requirepass "YOUR_REDIS_PWD"

@lionep
Copy link
Author

lionep commented Jul 19, 2023

@Akitash this gist was just an example for oneuptime team, but you’re right, the redis password inline is not a good practice

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment