Skip to content

一些常用的docker compose

keycloak

services:
  keycloak:
    image: keycloak/keycloak:26.1.4
    ports:
      - "8080:8080"
    environment:
      - KC_DB=postgres
      - KC_DB_URL=jdbc:postgresql://keycloak-db:5432/keycloak
      - KC_DB_USERNAME=keycloak
      - KC_DB_PASSWORD=secret
      - KC_BOOTSTRAP_ADMIN_USERNAME=admin
      - KC_BOOTSTRAP_ADMIN_PASSWORD=admin

    command: start-dev
    depends_on:
      - keycloak-db

  keycloak-db:
    image: postgres:15
    restart: always
    environment:
      - POSTGRES_DB=keycloak
      - POSTGRES_USER=keycloak
      - POSTGRES_PASSWORD=secret
    volumes:
      - /keycloak/keycloak_data:/var/lib/postgresql/data

volumes:
  keycloak_data:

perfect

version: '3.8'

services:
  prefect-postgres:
    image: postgres:latest
    container_name: prefect-postgres
    restart: unless-stopped
    environment:
      POSTGRES_HOST_AUTH_METHOD: md5
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: "12345677"
      POSTGRES_DB: prefect
    volumes:
      - /perfect/postgres:/var/lib/postgresql/
    ports:
      - "5433:5432"

  prefect:
    image: 192.168.0.10/user/prefect:latest
    depends_on:
      - prefect-postgres
    environment:
      PREFECT_SERVER_API_HOST: 0.0.0.0
      PREFECT_UI_URL: http://192.168.0.10:4200/api
      PREFECT_API_URL: http://192.168.0.10:4200/api
      PREFECT_API_DATABASE_CONNECTION_URL: postgresql+asyncpg://postgres:[email protected]:5433/prefect
    ports:
      - "192.168.1.2:4200:4200"

prometheu+grafana

services:
  prometheus:
    image: prom/prometheus:latest
    container_name: prometheus
    volumes:
      -  /grafana/prometheus.yml:/etc/prometheus/prometheus.yml
      -  /grafana/prometheus:/prometheus
    ports:
      - "9090:9090"
    restart: always
    networks:
      - monitoring

  grafana:
    image: grafana/grafana:latest
    container_name: grafana
    volumes:
      - /grafana:/var/lib/grafana
    ports:
      - "3000:3000"
    restart: always
    environment:
      - GF_SERVER_ROOT_URL=http://192.168.1.2:3000
      - GF_SERVER_HTTP_ADDR=0.0.0.0  # 允许从任何 IP 访问
      - GF_AUTH_ANONYMOUS_ENABLED=true  # 启用匿名访问
      - GF_AUTH_ANONYMOUS_ORG_ROLE=Viewer  # 匿名用户的权限设置为 Viewer
    networks:
      - monitoring

networks:
  monitoring:
    driver: bridge

v2ray

services:
  v2raya:
    image: mzz2017/v2raya
    container_name: v2raya
    restart: always
    privileged: true
    networks:
      macnet:
        ipv4_address: 192.168.4.1
    environment:
      V2RAYA_LOG_FILE: /tmp/v2raya.log
      V2RAYA_V2RAY_BIN: /usr/local/bin/v2ray
      V2RAYA_NFTABLES_SUPPORT: off
      IPTABLES_MODE: legacy
    volumes:
      - /lib/modules:/lib/modules:ro
      - /etc/resolv.conf:/etc/resolv.conf
      - /v2raya:/etc/v2raya

networks:
  macnet:
    external: true