this repo has no description
at main 6.0 kB view raw
1services: 2 zookeeper: 3 image: confluentinc/cp-zookeeper:7.6.0 4 hostname: zookeeper 5 container_name: zookeeper 6 network_mode: host 7 environment: 8 ZOOKEEPER_CLIENT_PORT: 2181 9 ZOOKEEPER_TICK_TIME: 2000 10 volumes: 11 - zookeeper-data:/var/lib/zookeeper/data 12 - zookeeper-logs:/var/lib/zookeeper/log 13 14 kafka1: 15 image: confluentinc/cp-kafka:7.6.0 16 hostname: kafka1 17 container_name: kafka1 18 network_mode: host 19 depends_on: 20 - zookeeper 21 environment: 22 KAFKA_BROKER_ID: 1 23 KAFKA_ZOOKEEPER_CONNECT: 'localhost:2181' 24 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT 25 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:29092,PLAINTEXT_HOST://localhost:9092 26 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3 27 KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 2 28 KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 3 29 KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0 30 KAFKA_JMX_PORT: 9101 31 KAFKA_JMX_HOSTNAME: localhost 32 KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true' 33 volumes: 34 - kafka1-data:/var/lib/kafka/data 35 36 kafka2: 37 image: confluentinc/cp-kafka:7.6.0 38 hostname: kafka2 39 container_name: kafka2 40 network_mode: host 41 depends_on: 42 - zookeeper 43 environment: 44 KAFKA_BROKER_ID: 2 45 KAFKA_ZOOKEEPER_CONNECT: 'localhost:2181' 46 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT 47 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:29093,PLAINTEXT_HOST://localhost:9093 48 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3 49 KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 2 50 KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 3 51 KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0 52 KAFKA_JMX_PORT: 9102 53 KAFKA_JMX_HOSTNAME: localhost 54 KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true' 55 volumes: 56 - kafka2-data:/var/lib/kafka/data 57 58 kafka3: 59 image: confluentinc/cp-kafka:7.6.0 60 hostname: kafka3 61 container_name: kafka3 62 network_mode: host 63 depends_on: 64 - zookeeper 65 environment: 66 KAFKA_BROKER_ID: 3 67 KAFKA_ZOOKEEPER_CONNECT: 'localhost:2181' 68 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT 69 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:29094,PLAINTEXT_HOST://localhost:9094 70 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3 71 KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 2 72 KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 3 73 KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0 74 KAFKA_JMX_PORT: 9103 75 KAFKA_JMX_HOSTNAME: localhost 76 KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true' 77 volumes: 78 - kafka3-data:/var/lib/kafka/data 79 80 cassandra: 81 image: cassandra:5.0 82 hostname: cassandra 83 container_name: cassandra 84 network_mode: host 85 environment: 86 CASSANDRA_CLUSTER_NAME: 'MyCluster' 87 CASSANDRA_DC: 'dc1' 88 CASSANDRA_RACK: 'rack1' 89 CASSANDRA_ENDPOINT_SNITCH: 'GossipingPropertyFileSnitch' 90 CASSANDRA_NUM_TOKENS: 256 91 volumes: 92 - cassandra-data:/var/lib/cassandra 93 healthcheck: 94 test: ["CMD-SHELL", "cqlsh -e 'describe cluster'"] 95 interval: 30s 96 timeout: 10s 97 retries: 5 98 99 database: 100 image: ghcr.io/vylet-app/go/database:main-cef5ae4 101 container_name: vylet-database 102 network_mode: host 103 depends_on: 104 cassandra: 105 condition: service_healthy 106 environment: 107 VYLET_DATABASE_LISTEN_ADDR: ":9091" 108 command: ["./database", "--cassandra-addrs", "127.0.0.1", "--cassandra-keyspace", "vylet"] 109 restart: unless-stopped 110 111 api: 112 image: ghcr.io/vylet-app/go/api:main-6956838 113 container_name: vylet-api 114 network_mode: host 115 depends_on: 116 - database 117 environment: 118 VYLET_API_LISTEN_ADDR: ":8085" 119 VYLET_API_DB_HOST: "localhost:9091" 120 VYLET_API_CDN_HOST: "https://img.cdn.staging.vylet.app" 121 restart: unless-stopped 122 123 firehose: 124 image: ghcr.io/vylet-app/go/firehose:main-3eb83ef 125 container_name: vylet-firehose 126 network_mode: host 127 depends_on: 128 - kafka1 129 - kafka2 130 - kafka3 131 environment: 132 VYLET_FIREHOSE_WEBSOCKET_HOST: "wss://bsky.network" 133 VYLET_FIREHOSE_BOOTSTRAP_SERVERS: "localhost:9092,localhost:9093,localhost:9094" 134 VYLET_FIREHOSE_OUTPUT_TOPIC: "firehose-events-prod" 135 VYLET_FIREHOSE_DESIRED_COLLECTIONS: "app.vylet.*" 136 restart: unless-stopped 137 138 indexer: 139 image: ghcr.io/vylet-app/go/indexer:main-3eb83ef 140 container_name: vylet-indexer 141 network_mode: host 142 depends_on: 143 - kafka1 144 - kafka2 145 - kafka3 146 - database 147 environment: 148 VYLET_INDEXER_DATABASE_HOST: "localhost:9091" 149 VYLET_BOOTSTRAP_SERVERS: "localhost:9092,localhost:9093,localhost:9094" 150 VYLET_INDEXER_INPUT_TOPIC: "firehose-events-prod" 151 VYLET_INDEXER_CONSUMER_GROUP: "vylet-indexer-staging" 152 METRICS_LISTEN_ADDRESS: ":6104" 153 restart: unless-stopped 154 155 cdn: 156 image: ghcr.io/vylet-app/go/cdn:main 157 container_name: vylet-cdn 158 network_mode: host 159 depends_on: 160 - kafka1 161 - kafka2 162 - kafka3 163 - database 164 environment: 165 VYLET_CDN_DATABASE_HOST: "localhost:9091" 166 VYLET_BOOTSTRAP_SERVERS: "localhost:9092,localhost:9093,localhost:9094" 167 VYLET_CDN_INPUT_TOPIC: "firehose-events-prod" 168 VYLET_CDN_CONSUMER_GROUP: "vylet-cdn-staging" 169 restart: unless-stopped 170 171 imgproxy: 172 image: darthsim/imgproxy:latest 173 container_name: imgproxy 174 network_mode: host 175 environment: 176 IMGPROXY_BIND: ":9525" 177 IMGPROXY_ONLY_PRESETS: "true" 178 IMGPROXY_BASE_URL: "http://localhost:8085/xrpc/app.vylet.media.getBlob/" 179 IMGPROXY_USE_ETAG: "true" 180 IMGPROXY_PRESETS: "fullsize=resizing_type:fit/width:2000/height:2000/format:jpeg,thumb=resizing_type:fit/width:200/height:200/format:jpeg" 181 IMGPROXY_ALLOW_LOOPBACK_SOURCE_ADDRESSES: "true" 182 restart: unless-stopped 183 184volumes: 185 zookeeper-data: 186 zookeeper-logs: 187 kafka1-data: 188 kafka2-data: 189 kafka3-data: 190 cassandra-data: