Summary
When I attempt to open the devcontainer in VSCode, it throws an error and exits but I expected it to open the devcontainer.
Seems to have some kind of issue opening some file that it generates.
Discussed in Fluxer Developers at
https://fluxer.app/channels/1427764813854588940/1516372227916824576/1518254638854311936.
Steps to reproduce
- Clone this project locally
- Open this project in VS Code
- Ensure Microsoft's Devcontainers VS Code extension is installed
- Trigger the "Reopen in container" in container action either from the Actions Menu (CTRL+SHIFT+P) or from the "Connect to Host" button on the bottom left of the window.
- It will load for a few seconds then exit.
Environment
Version: "v2"
fa3e8525755dae087c03ceaf83b814cbe46c7228
OS: Kubuntu Resolute x86_64
Browser: N/A
Device: PC
Logs or screenshots
Logs with my name removed and replaced with
me and my HOME path replaced with
~.
```log
[82 ms] Dev Containers 0.459.1 in VS Code 1.120.0 (0958016b2af9f09bb4257e0df4a95e2f90590f9f).
[81 ms] Start: Resolving Remote
[96 ms] Setting up container for folder or workspace: ~/Programs/fluxer/fluxer-git
[99 ms] Start: Check Docker is running
[100 ms] Start: Run: docker version
[302 ms] Client:
Version:
[303 ms] 29.3.1
API version: 1.54
Go version: go1.25.8
Git commit: c2be9cc
Built: Wed Apr 1 15:52:18 2026
OS/Arch: linux/amd64
Context: default
Server:
Engine:
Version: 29.3.1
API version: 1.54 (minimum version 1.40)
Go version: go1.25.8
Git commit: f78c987
Built: Wed Apr 1 15:52:54 2026
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v2.2.2
GitCommit: 301b2dac98f15c27117da5c8af12118a041a31d9
runc:
Version: 1.3.4
GitCommit:
docker-init:
Version: 0.19.0
GitCommit: de40ad0
[307 ms] Start: Run: docker volume ls -q
[418 ms] Start: Run: docker ps -q -a --filter label=vsch.local.folder=~/Programs/fluxer/fluxer-git --filter label=vsch.quality=stable
[496 ms] Start: Run: docker ps -q -a --filter label=devcontainer.local_folder=~/Programs/fluxer/fluxer-git --filter label=devcontainer.config_file=~/Programs/fluxer/fluxer-git/.devcontainer/devcontainer.json
[574 ms] Start: Run: docker ps -q -a --filter label=devcontainer.local_folder=~/Programs/fluxer/fluxer-git
[645 ms] Start: Run: docker ps -q -a --filter label=devcontainer.local_folder=~/Programs/fluxer/fluxer-git
[715 ms] Running Dev Containers CLI: up --user-data-folder ~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data --container-session-data-folder /tmp/devcontainers-57d1147d-880e-449f-b8d8-6b68b68136401782147365239 --workspace-folder ~/Programs/fluxer/fluxer-git --workspace-mount-consistency cached --gpu-availability detect --id-label devcontainer.local_folder=~/Programs/fluxer/fluxer-git --id-label devcontainer.config_file=~/Programs/fluxer/fluxer-git/.devcontainer/devcontainer.json --log-level debug --log-format json --config ~/Programs/fluxer/fluxer-git/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --experimental-lockfile --mount type=volume,source=vscode,target=/vscode,external=true --mount type=bind,source=/run/user/1000/wayland-0,target=/tmp/vscode-wayland-ec7553ec-4e3c-48cd-8c9a-e29377028db6.sock --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root --include-configuration --include-merged-configuration
[715 ms] Start: Run: /usr/share/code/code ~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js up --user-data-folder ~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data --container-session-data-folder /tmp/devcontainers-57d1147d-880e-449f-b8d8-6b68b68136401782147365239 --workspace-folder ~/Programs/fluxer/fluxer-git --workspace-mount-consistency cached --gpu-availability detect --id-label devcontainer.local_folder=~/Programs/fluxer/fluxer-git --id-label devcontainer.config_file=~/Programs/fluxer/fluxer-git/.devcontainer/devcontainer.json --log-level debug --log-format json --config ~/Programs/fluxer/fluxer-git/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --experimental-lockfile --mount type=volume,source=vscode,target=/vscode,external=true --mount type=bind,source=/run/user/1000/wayland-0,target=/tmp/vscode-wayland-ec7553ec-4e3c-48cd-8c9a-e29377028db6.sock --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root --include-configuration --include-merged-configuration
[854 ms] @devcontainers/cli 0.86.1. Node.js v22.22.1. linux 7.0.0-22-generic x64.
[854 ms] Start: Run: docker buildx version
[2246 ms] github.com/docker/buildx v0.31.1 a2675950d46b2cb171b23c2015ca44fb88607531
[2246 ms]
[2246 ms] Start: Run: docker version --format {{.Server.Version}}
[2327 ms] 29.3.1
[2327 ms]
[2327 ms] Start: Run: docker -v
[2395 ms] Start: Resolving Remote
[2401 ms] Loading 121 extra certificates from /etc/ssl/certs/ca-certificates.crt.
[2801 ms] Start: Run: docker compose version --short
[3397 ms] Docker Compose version: 5.1.1
[3397 ms] Start: Run: docker compose -f ~/Programs/fluxer/fluxer-git/.devcontainer/docker-compose.yml --profile * config
[3523 ms] name: fluxer-dev
services:
cassandra:
environment:
CASSANDRA_CLUSTER_NAME: fluxer-dev
CASSANDRA_DC: datacenter1
CASSANDRA_ENDPOINT_SNITCH: GossipingPropertyFileSnitch
HEAP_NEWSIZE: 128M
MAX_HEAP_SIZE: 768M
image: cassandra:5.0.8
networks:
default: null
ports:
- mode: ingresstarget: 9042published: "9042"protocol: tcp
volumes:
- type: volumesource: cassandra-datatarget: /var/lib/cassandravolume: {}
elasticsearch:
environment:
ELASTIC_PASSWORD: fluxer-dev-elasticsearch
ES_JAVA_OPTS: -Xms512m -Xmx512m
discovery.type: single-node
xpack.security.enabled: "true"
xpack.security.http.ssl.enabled: "false"
image: docker.elastic.co/elasticsearch/elasticsearch:9.3.2
networks:
default: null
ports:
- mode: ingresstarget: 9200published: "9200"protocol: tcp
volumes:
- type: volumesource: elasticsearch-datatarget: /usr/share/elasticsearch/datavolume: {}
livekit:
command:
- --config
- /etc/livekit.yaml
- --bind
- 0.0.0.0
image: livekit/livekit-server:v1.12.0
networks:
default: null
ports:
- mode: ingresstarget: 7880published: "7880"protocol: tcp
- mode: ingresstarget: 7881published: "7881"protocol: tcp
- mode: ingresstarget: 7882published: "7882"protocol: udp
- mode: ingresstarget: 7883published: "7883"protocol: udp
- mode: ingresstarget: 7884published: "7884"protocol: udp
- mode: ingresstarget: 7885published: "7885"protocol: udp
- mode: ingresstarget: 7886published: "7886"protocol: udp
- mode: ingresstarget: 7887published: "7887"protocol: udp
- mode: ingresstarget: 7888published: "7888"protocol: udp
- mode: ingresstarget: 7889published: "7889"protocol: udp
- mode: ingresstarget: 7890published: "7890"protocol: udp
- mode: ingresstarget: 7891published: "7891"protocol: udp
- mode: ingresstarget: 7892published: "7892"protocol: udp
volumes:
- type: bindsource: ~/Programs/fluxer/fluxer-git/.devcontainer/livekit.yamltarget: /etc/livekit.yamlread_only: truebind: {}
mailpit:
environment:
MP_DATABASE: /data/mailpit.db
MP_MAX_MESSAGES: "5000"
MP_SMTP_AUTH_ACCEPT_ANY: "1"
MP_SMTP_AUTH_ALLOW_INSECURE: "1"
MP_WEBROOT: devmail
image: axllent/mailpit:v1.30
networks:
default: null
volumes:
- type: volumesource: mailpit-datatarget: /datavolume: {}
meilisearch:
environment:
MEILI_MASTER_KEY: fluxer-dev-meilisearch
MEILI_NO_ANALYTICS: "true"
image: getmeili/meilisearch:v1.12
networks:
default: null
ports:
- mode: ingresstarget: 7700published: "7700"protocol: tcp
volumes:
- type: volumesource: meilisearch-datatarget: /meili_datavolume: {}
nats:
command:
image: nats:2.14.2-alpine
networks:
default: null
ports:
- mode: ingresstarget: 4222published: "4222"protocol: tcp
- mode: ingresstarget: 8222published: "8222"protocol: tcp
volumes:
- type: volumesource: nats-datatarget: /datavolume: {}
postgres:
environment:
POSTGRES_DB: fluxer
POSTGRES_PASSWORD: fluxer
POSTGRES_USER: fluxer
image: postgres:16-alpine
networks:
default: null
ports:
- mode: ingresstarget: 5432published: "5432"protocol: tcp
volumes:
- type: volumesource: postgres-datatarget: /var/lib/postgresql/datavolume: {}
valkey:
command:
- valkey-server
- --save
- ""
- --appendonly
- "no"
image: valkey/valkey:8.1.7-alpine
networks:
default: null
ports:
- mode: ingresstarget: 6379published: "6379"protocol: tcp
workspace:
build:
context: ~/Programs/fluxer/fluxer-git
dockerfile: .devcontainer/Dockerfile
command:
depends_on:
cassandra:
condition: service_started
required: true
elasticsearch:
condition: service_started
required: true
livekit:
condition: service_started
required: true
mailpit:
condition: service_started
required: true
nats:
condition: service_started
required: true
postgres:
condition: service_started
required: true
valkey:
condition: service_started
required: true
environment:
AWS_ACCESS_KEY_ID: fluxer
AWS_DEFAULT_REGION: us-east-1
AWS_EC2_METADATA_DISABLED: "true"
AWS_SECRET_ACCESS_KEY: fluxer-secret
DOCKER_HOST: unix:///var/run/docker.sock
FLUXER_ADMIN_BASE_PATH: /admin
FLUXER_ADMIN_ENDPOINT:
http://localhost:8088/admin
FLUXER_ADMIN_OAUTH_CLIENT_ID: "1234567890123456789"
FLUXER_ADMIN_OAUTH_CLIENT_SECRET: dev-admin-oauth-secret
FLUXER_ADMIN_OAUTH_REDIRECT_URI:
http://localhost:8088/admin/oauth2_callback
FLUXER_ADMIN_PORT: "3020"
FLUXER_ADMIN_SECRET_KEY_BASE: dev-admin-secret-key-base
FLUXER_API_CLIENT_ENDPOINT:
http://localhost:8088/api
FLUXER_API_ENDPOINT:
http://localhost:8088/api
FLUXER_API_PORT: "8080"
FLUXER_API_PRESIGNED_ATTACHMENT_UPLOADS_ENABLED: "true"
FLUXER_API_WORKER_ENABLE_VOICE_RECONCILIATION: "true"
FLUXER_API_WORKER_MODE: all_lanes
FLUXER_APP_DEV_PORT: "3000"
FLUXER_APP_ENDPOINT:
http://localhost:8088/
FLUXER_APP_PROXY_PORT: "8773"
FLUXER_BASE_DOMAIN: localhost
FLUXER_CAPTCHA_ENABLED: "false"
FLUXER_CAPTCHA_PROVIDER: none
FLUXER_CASSANDRA_HOSTS: cassandra
FLUXER_CASSANDRA_KEYSPACE: fluxer
FLUXER_CASSANDRA_LOCAL_DC: datacenter1
FLUXER_CASSANDRA_PASSWORD: fluxer
FLUXER_CASSANDRA_PORT: "9042"
FLUXER_CASSANDRA_USERNAME: fluxer
FLUXER_CLAMAV_ENABLED: "false"
FLUXER_CLIENT_IP_HEADER_NAME: x-forwarded-for
FLUXER_CONNECTION_INITIATION_SECRET: dev-connection-initiation-secret
FLUXER_DATABASE_BACKEND: postgres
FLUXER_DISABLE_RATE_LIMITS: "true"
FLUXER_DISCOVERY_ENABLED: "true"
FLUXER_EMAIL_ENABLED: "true"
FLUXER_EMAIL_FROM_EMAIL: dev@localhost
FLUXER_EMAIL_FROM_NAME: Fluxer Dev
FLUXER_EMAIL_PROVIDER: smtp
FLUXER_EMAIL_SMTP_HOST: mailpit
FLUXER_EMAIL_SMTP_PASSWORD: dev
FLUXER_EMAIL_SMTP_PORT: "1025"
FLUXER_EMAIL_SMTP_SECURE: "false"
FLUXER_EMAIL_SMTP_USERNAME: dev
FLUXER_ENV: development
FLUXER_GATEWAY_ENDPOINT: ws://localhost:8088/gateway
FLUXER_GATEWAY_LOGGER_LEVEL: info
FLUXER_GATEWAY_MEDIA_PROXY_ENDPOINT:
http://localhost:8088/media
FLUXER_GATEWAY_PORT: "8771"
FLUXER_GATEWAY_PRESENCE_PUSH_BUFFER_MAX_BYTES: "1048576"
FLUXER_GATEWAY_PRESENCE_PUSH_BUFFER_MAX_ENTRIES: "128"
FLUXER_GATEWAY_RPC_AUTH_TOKEN: dev-gateway-rpc-token
FLUXER_GATEWAY_STATIC_CDN_ENDPOINT:
http://localhost:8088/
FLUXER_GIF_PROVIDER: tenor
FLUXER_INTERNAL_API_ENDPOINT:
http://127.0.0.1:8080/
FLUXER_INTERNAL_GATEWAY_ENDPOINT:
http://127.0.0.1:8771/
FLUXER_INTERNAL_MEDIA_PROXY_ENDPOINT:
http://127.0.0.1:8082/
FLUXER_KV_URL: redis://valkey:6379/0
FLUXER_LIVEKIT_API_KEY: devkey
FLUXER_LIVEKIT_API_SECRET: secret
FLUXER_LIVEKIT_DEFAULT_REGION: '{"id":"local","name":"Local","emoji":"LC","latitude":59.3293,"longitude":18.0686}'
FLUXER_LIVEKIT_ENABLED: "true"
FLUXER_LIVEKIT_URL: ws://localhost:8088/livekit
FLUXER_LIVEKIT_WEBHOOK_URL:
http://localhost:8088/api/webhooks/livekit
FLUXER_MARKETING_BASE_PATH: /marketing
FLUXER_MARKETING_ENDPOINT:
http://localhost:8088/marketing
FLUXER_MARKETING_HOST: 0.0.0.0
FLUXER_MARKETING_PORT: "3010"
FLUXER_MARKETING_SECRET_KEY_BASE: dev-marketing-secret-key-base
FLUXER_MEDIA_ENDPOINT:
http://localhost:8088/media
FLUXER_MEDIA_PROXY_ENDPOINT:
http://127.0.0.1:8082/
FLUXER_MEDIA_PROXY_HOST: 0.0.0.0
FLUXER_MEDIA_PROXY_MODE: upload
FLUXER_MEDIA_PROXY_PORT: "8082"
FLUXER_MEDIA_PROXY_PUBLIC_ENDPOINT:
http://localhost:8088/media
FLUXER_MEDIA_PROXY_SECRET_KEY: dev-media-proxy-secret
FLUXER_MEDIA_PROXY_STORAGE_BACKEND: s3
FLUXER_MEDIA_PROXY_UPLOAD_RELAY_ENDPOINT:
http://localhost:8088/media
FLUXER_MEDIA_PROXY_UPLOAD_RELAY_KEEP_DIRECT_COUNTRIES: ""
FLUXER_MEDIA_PROXY_UPLOAD_RELAY_SECRET_BASE64: Zmx1eGVyLWRldi11cGxvYWQtcmVsYXktc2VjcmV0LTAwMDA=
FLUXER_NATS_JETSTREAM_URL: nats://nats:4222
FLUXER_NATS_URL: nats://nats:4222
FLUXER_NCMEC_ENABLED: "false"
FLUXER_PASSKEY_ADDITIONAL_ALLOWED_ORIGINS:
http://localhost,http//localhost:8088
FLUXER_PASSKEY_RP_ID: localhost
FLUXER_PASSKEY_RP_NAME: Fluxer Dev
FLUXER_POSTGRES_DATABASE: fluxer
FLUXER_POSTGRES_HOST: postgres
FLUXER_POSTGRES_KV_TABLE: fluxer_kv
FLUXER_POSTGRES_MAX_CONNECTIONS: "20"
FLUXER_POSTGRES_PASSWORD: fluxer
FLUXER_POSTGRES_PORT: "5432"
FLUXER_POSTGRES_SSL: "false"
FLUXER_POSTGRES_USERNAME: fluxer
FLUXER_PUBLIC_PORT: "8088"
FLUXER_PUBLIC_SCHEME: http
FLUXER_PUBLIC_URL:
http://localhost:8088/
FLUXER_S3_ACCESS_KEY_ID: fluxer
FLUXER_S3_BUCKET_CDN: fluxer
FLUXER_S3_BUCKET_DOWNLOADS: fluxer-downloads
FLUXER_S3_BUCKET_HARVESTS: fluxer-harvests
FLUXER_S3_BUCKET_REPORTS: fluxer-reports
FLUXER_S3_BUCKET_STATIC: fluxer-static
FLUXER_S3_BUCKET_UPLOADS: fluxer-uploads
FLUXER_S3_ENDPOINT:
http://127.0.0.1:8333/
FLUXER_S3_FORCE_PATH_STYLE: "true"
FLUXER_S3_PUBLIC_ENDPOINT:
http://localhost:8088/
FLUXER_S3_REGION: us-east-1
FLUXER_S3_SECRET_ACCESS_KEY: fluxer-secret
FLUXER_SEARCH_ENGINE: elasticsearch
FLUXER_SEARCH_PASSWORD: fluxer-dev-elasticsearch
FLUXER_SEARCH_TLS_REJECT_UNAUTHORIZED: "false"
FLUXER_SEARCH_URL:
http://elasticsearch:9200/
FLUXER_SEARCH_USERNAME: elastic
FLUXER_SELF_HOSTED: "true"
FLUXER_SMS_ENABLED: "false"
FLUXER_STATIC_CDN_DOMAIN: localhost
FLUXER_STATIC_CDN_ENDPOINT:
http://localhost:8088/
FLUXER_STATIC_DIR: fluxer_app/dist
FLUXER_STRIPE_ENABLED: "false"
FLUXER_SUDO_MODE_SECRET: dev-sudo-secret
FLUXER_SVC_CACHE_HARD_TTL_MS: "600000"
FLUXER_SVC_CACHE_TTL_MS: "30000"
FLUXER_SVC_MAX_CONCURRENT_REQUESTS: "64"
FLUXER_SVC_NATS_URL: nats://nats:4222
FLUXER_SVC_SHARD_COUNT: "1"
FLUXER_TEST_MODE_ENABLED: "false"
FLUXER_TRUST_CLIENT_IP_HEADER: "true"
FLUXER_VAPID_EMAIL: dev@localhost
FLUXER_VAPID_PRIVATE_KEY: dev-vapid-private-key
FLUXER_VAPID_PUBLIC_KEY: dev-vapid-public-key
KUBECONFIG: /workspaces/fluxer/.fluxer/k8s/local-kubeconfig
NODE_ENV: development
PUBLIC_BOOTSTRAP_API_ENDPOINT: /api
PUBLIC_BOOTSTRAP_API_PUBLIC_ENDPOINT:
http://localhost:8088/api
PUBLIC_BUILD_VERSION: dev
PUBLIC_RELEASE_CHANNEL: canary
extra_hosts:
- host.docker.internal=host-gateway
init: true
networks:
default: null
ports:
- mode: ingresstarget: 8000published: "8000"protocol: tcp
- mode: ingresstarget: 3000published: "3000"protocol: tcp
- mode: ingresstarget: 8088published: "8088"protocol: tcp
- mode: ingresstarget: 8080published: "8080"protocol: tcp
- mode: ingresstarget: 8771published: "8771"protocol: tcp
- mode: ingresstarget: 8082published: "8082"
protocol: tcp
- mode: ingresstarget: 3010published: "3010"protocol: tcp
- mode: ingresstarget: 3020published: "3020"protocol: tcp
- mode: ingresstarget: 8100published: "8100"protocol: tcp
- mode: ingresstarget: 8101published: "8101"protocol: tcp
- mode: ingresstarget: 8102published: "8102"protocol: tcp
- mode: ingresstarget: 8103published: "8103"protocol: tcp
- mode: ingresstarget: 8104published: "8104"protocol: tcp
- mode: ingresstarget: 8105published: "8105"protocol: tcp
- mode: ingresstarget: 8106published: "8106"protocol: tcp
- mode: ingresstarget: 8107published: "8107"protocol: tcp
- mode: ingresstarget: 8108published: "8108"protocol: tcp
- mode: ingresstarget: 8109published: "8109"protocol: tcp
- mode: ingresstarget: 8110published: "8110"protocol: tcp
- mode: ingresstarget: 8111published: "8111"protocol: tcp
- mode: ingresstarget: 8112published: "8112"protocol: tcp
- mode: ingresstarget: 8113published: "8113"protocol: tcp
- mode: ingresstarget: 8114published: "8114"protocol: tcp
- mode: ingresstarget: 8115published: "8115"protocol: tcp
- mode: ingresstarget: 8116published: "8116"protocol: tcp
- mode: ingresstarget: 8117published: "8117"protocol: tcp
- mode: ingresstarget: 8118published: "8118"protocol: tcp
- mode: ingresstarget: 8119published: "8119"protocol: tcp
- mode: ingresstarget: 8120published: "8120"protocol: tcp
- mode: ingresstarget: 8121published: "8121"protocol: tcp
- mode: ingresstarget: 8122published: "8122"protocol: tcp
- mode: ingresstarget: 8123published: "8123"protocol: tcp
- mode: ingresstarget: 8124published: "8124"protocol: tcp
- mode: ingresstarget: 8125published: "8125"protocol: tcp
- mode: ingresstarget: 8333published: "3900"protocol: tcp
- mode: ingresstarget: 8888published: "8888"protocol: tcp
- mode: ingresstarget: 9333published: "9333"protocol: tcp
- mode: ingresstarget: 9340published: "9340"protocol: tcp
- mode: ingresstarget: 23646published: "23646"protocol: tcp
volumes:
- type: bindsource: ~/Programs/fluxer/fluxer-git
target: /workspaces/fluxer
bind: {}
- type: volumesource: root-node-modulestarget: /workspaces/fluxer/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-node-modulestarget: /workspaces/fluxer/fluxer_api/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-node-modulestarget: /workspaces/fluxer/fluxer_app/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-desktop-node-modulestarget: /workspaces/fluxer/fluxer_desktop/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-marketing-node-modulestarget: /workspaces/fluxer/fluxer_marketing/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-admin-node-modulestarget: /workspaces/fluxer/fluxer_admin/node_modulesvolume:nocopy: true
- type: volumesource: package-config-node-modulestarget: /workspaces/fluxer/packages/config/node_modulesvolume:nocopy: true
- type: volumesource: package-constants-node-modulestarget: /workspaces/fluxer/packages/constants/node_modulesvolume:nocopy: true
- type: volumesource: package-date-utils-node-modulestarget: /workspaces/fluxer/packages/date_utils/node_modulesvolume:nocopy: true
- type: volumesource: package-errors-node-modulestarget: /workspaces/fluxer/packages/errors/node_modulesvolume:nocopy: true
- type: volumesource: package-geo-utils-node-modulestarget: /workspaces/fluxer/packages/geo_utils/node_modulesvolume:nocopy: true
- type: volumesource: package-hono-node-modulestarget: /workspaces/fluxer/packages/hono/node_modulesvolume:nocopy: true
- type: volumesource: package-hono-types-node-modulestarget: /workspaces/fluxer/packages/hono_types/node_modulesvolume:nocopy: true
- type: volumesource: package-i18n-node-modulestarget: /workspaces/fluxer/packages/i18n/node_modulesvolume:nocopy: true
- type: volumesource: package-instance-bootstrap-node-modulestarget: /workspaces/fluxer/packages/instance_bootstrap/node_modulesvolume:nocopy: true
- type: volumesource: package-ip-utils-node-modulestarget: /workspaces/fluxer/packages/ip_utils/node_modulesvolume:nocopy: true
- type: volumesource: package-limits-node-modulestarget: /workspaces/fluxer/packages/limits/node_modulesvolume:nocopy: true
- type: volumesource: package-logger-node-modulestarget: /workspaces/fluxer/packages/logger/node_modulesvolume:nocopy: true
- type: volumesource: package-openapi-node-modulestarget: /workspaces/fluxer/packages/openapi/node_modulesvolume:nocopy: true
- type: volumesource: package-schema-node-modulestarget: /workspaces/fluxer/packages/schema/node_modulesvolume:nocopy: true
- type: volumesource: package-snowflake-node-modulestarget: /workspaces/fluxer/packages/snowflake/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-cache-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/cache/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-captcha-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/captcha/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-cassandra-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/cassandra/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-elasticsearch-search-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/elasticsearch_search/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-email-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/email/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-geoip-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/geoip/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-http-client-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/http_client/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-initialization-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/initialization/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-kv-client-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/kv_client/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-locale-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/locale/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-media-proxy-utils-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/media_proxy_utils/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-mime-utils-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/mime_utils/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-nats-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/nats/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-rate-limit-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/rate_limit/node_modulesvolume:
nocopy: true
- type: volumesource: fluxer-api-sms-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/sms/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-virus-scan-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/virus_scan/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-worker-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/worker/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-list-utils-node-modulestarget: /workspaces/fluxer/fluxer_app/pkgs/list_utils/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-livekit-client-node-modulestarget: /workspaces/fluxer/fluxer_app/pkgs/livekit-client/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-number-utils-node-modulestarget: /workspaces/fluxer/fluxer_app/pkgs/number_utils/node_modulesvolume:nocopy: true
- type: volumesource: pnpm-storetarget: /home/vscode/.local/share/pnpm/storevolume: {}
- type: volumesource: cargo-registrytarget: /home/vscode/.cargo/registryvolume: {}
- type: volumesource: cargo-gittarget: /home/vscode/.cargo/gitvolume: {}
- type: volumesource: rust-targettarget: /workspaces/fluxer/targetvolume: {}
- type: bindsource: /var/run/docker.socktarget: /var/run/docker.sock
networks:
default:
name: fluxer-dev_default
volumes:
cargo-git:
name: fluxer-dev_cargo-git
cargo-registry:
name: fluxer-dev_cargo-registry
cassandra-data:
name: fluxer-dev_cassandra-data
elasticsearch-data:
name: fluxer-dev_elasticsearch-data
fluxer-admin-node-modules:
name: fluxer-dev_fluxer-admin-node-modules
fluxer-api-cache-node-modules:
name: fluxer-dev_fluxer-api-cache-node-modules
fluxer-api-captcha-node-modules:
name: fluxer-dev_fluxer-api-captcha-node-modules
fluxer-api-cassandra-node-modules:
name: fluxer-dev_fluxer-api-cassandra-node-modules
fluxer-api-elasticsearch-search-node-modules:
name: fluxer-dev_fluxer-api-elasticsearch-search-node-modules
fluxer-api-email-node-modules:
name: fluxer-dev_fluxer-api-email-node-modules
fluxer-api-geoip-node-modules:
name: fluxer-dev_fluxer-api-geoip-node-modules
fluxer-api-http-client-node-modules:
name: fluxer-dev_fluxer-api-http-client-node-modules
fluxer-api-initialization-node-modules:
name: fluxer-dev_fluxer-api-initialization-node-modules
fluxer-api-kv-client-node-modules:
name: fluxer-dev_fluxer-api-kv-client-node-modules
fluxer-api-locale-node-modules:
name: fluxer-dev_fluxer-api-locale-node-modules
fluxer-api-media-proxy-utils-node-modules:
name: fluxer-dev_fluxer-api-media-proxy-utils-node-modules
fluxer-api-mime-utils-node-modules:
name: fluxer-dev_fluxer-api-mime-utils-node-modules
fluxer-api-nats-node-modules:
name: fluxer-dev_fluxer-api-nats-node-modules
fluxer-api-node-modules:
name: fluxer-dev_fluxer-api-node-modules
fluxer-api-rate-limit-node-modules:
name: fluxer-dev_fluxer-api-rate-limit-node-modules
fluxer-api-sms-node-modules:
name: fluxer-dev_fluxer-api-sms-node-modules
fluxer-api-virus-scan-node-modules:
name: fluxer-dev_fluxer-api-virus-scan-node-modules
fluxer-api-worker-node-modules:
name: fluxer-dev_fluxer-api-worker-node-modules
fluxer-app-list-utils-node-modules:
name: fluxer-dev_fluxer-app-list-utils-node-modules
fluxer-app-livekit-client-node-modules:
name: fluxer-dev_fluxer-app-livekit-client-node-modules
fluxer-app-node-modules:
name: fluxer-dev_fluxer-app-node-modules
fluxer-app-number-utils-node-modules:
name: fluxer-dev_fluxer-app-number-utils-node-modules
fluxer-desktop-node-modules:
name: fluxer-dev_fluxer-desktop-node-modules
fluxer-marketing-node-modules:
name: fluxer-dev_fluxer-marketing-node-modules
mailpit-data:
name: fluxer-dev_mailpit-data
meilisearch-data:
name: fluxer-dev_meilisearch-data
nats-data:
name: fluxer-dev_nats-data
package-config-node-modules:
name: fluxer-dev_package-config-node-modules
package-constants-node-modules:
name: fluxer-dev_package-constants-node-modules
package-date-utils-node-modules:
name: fluxer-dev_package-date-utils-node-modules
package-errors-node-modules:
name: fluxer-dev_package-errors-node-modules
package-geo-utils-node-modules:
name: fluxer-dev_package-geo-utils-node-modules
package-hono-node-modules:
name: fluxer-dev_package-hono-node-modules
package-hono-types-node-modules:
name: fluxer-dev_package-hono-types-node-modules
package-i18n-node-modules:
name: fluxer-dev_package-i18n-node-modules
package-instance-bootstrap-node-modules:
name: fluxer-dev_package-instance-bootstrap-node-modules
package-ip-utils-node-modules:
name: fluxer-dev_package-ip-utils-node-modules
package-limits-node-modules:
name: fluxer-dev_package-limits-node-modules
package-logger-node-modules:
name: fluxer-dev_package-logger-node-modules
package-openapi-node-modules:
name: fluxer-dev_package-openapi-node-modules
package-schema-node-modules:
name: fluxer-dev_package-schema-node-modules
package-snowflake-node-modules:
name: fluxer-dev_package-snowflake-node-modules
pnpm-store:
name: fluxer-dev_pnpm-store
postgres-data:
name: fluxer-dev_postgres-data
root-node-modules:
name: fluxer-dev_root-node-modules
rust-target:
name: fluxer-dev_rust-target
[3529 ms] Start: Run: docker ps -q -a --filter label=com.docker.compose.project=fluxer-dev --filter label=com.docker.compose.service=workspace
[3593 ms] Start: Run: docker events --format {{json .}} --filter event=start
[3597 ms] PersistedPath=~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data, ContainerHasLabels=false
[3598 ms] Start: Run: docker compose -f ~/Programs/fluxer/fluxer-git/.devcontainer/docker-compose.yml --profile * config
[3708 ms] name: fluxer-dev
services:
cassandra:
environment:
CASSANDRA_CLUSTER_NAME: fluxer-dev
CASSANDRA_DC: datacenter1
CASSANDRA_ENDPOINT_SNITCH: GossipingPropertyFileSnitch
HEAP_NEWSIZE: 128M
MAX_HEAP_SIZE: 768M
image: cassandra:5.0.8
networks:
default: null
ports:
- mode: ingresstarget: 9042published: "9042"protocol: tcp
volumes:
- type: volumesource: cassandra-datatarget: /var/lib/cassandravolume: {}
elasticsearch:
environment:
ELASTIC_PASSWORD: fluxer-dev-elasticsearch
ES_JAVA_OPTS: -Xms512m -Xmx512m
discovery.type: single-node
xpack.security.enabled: "true"
xpack.security.http.ssl.enabled: "false"
image: docker.elastic.co/elasticsearch/elasticsearch:9.3.2
networks:
default: null
ports:
- mode: ingresstarget: 9200published: "9200"protocol: tcp
volumes:
- type: volumesource: elasticsearch-datatarget: /usr/share/elasticsearch/datavolume: {}
livekit:
command:
- --config
- /etc/livekit.yaml
- --bind
- 0.0.0.0
image: livekit/livekit-server:v1.12.0
networks:
default: null
ports:
- mode: ingresstarget: 7880published: "7880"protocol: tcp
- mode: ingresstarget: 7881published: "7881"protocol: tcp
- mode: ingresstarget: 7882published: "7882"protocol: udp
- mode: ingresstarget: 7883published: "7883"protocol: udp
- mode: ingresstarget: 7884published: "7884"protocol: udp
- mode: ingresstarget: 7885published: "7885"protocol: udp
- mode: ingresstarget: 7886published: "7886"protocol: udp
- mode: ingresstarget: 7887published: "7887"protocol: udp
- mode: ingresstarget: 7888published: "7888"protocol: udp
- mode: ingresstarget: 7889published: "7889"protocol: udp
- mode: ingresstarget: 7890published: "7890"protocol: udp
- mode: ingresstarget: 7891published: "7891"protocol: udp
- mode: ingresstarget: 7892published: "7892"protocol: udp
volumes:
- type: bindsource: ~/Programs/fluxer/fluxer-git/.devcontainer/livekit.yamltarget: /etc/livekit.yamlread_only: truebind: {}
mailpit:
environment:
MP_DATABASE: /data/mailpit.db
MP_MAX_MESSAGES: "5000"
MP_SMTP_AUTH_ACCEPT_ANY: "1"
MP_SMTP_AUTH_ALLOW_INSECURE: "1"
MP_WEBROOT: devmail
image: axllent/mailpit:v1.30
networks:
default: null
volumes:
- type: volumesource: mailpit-datatarget: /datavolume: {}
meilisearch:
environment:
MEILI_MASTER_KEY: fluxer-dev-meilisearch
MEILI_NO_ANALYTICS: "true"
image: getmeili/meilisearch:v1.12
networks:
default: null
ports:
- mode: ingresstarget: 7700published: "7700"protocol: tcp
volumes:
- type: volumesource: meilisearch-datatarget: /meili_datavolume: {}
nats:
command:
image: nats:2.14.2-alpine
networks:
default: null
ports:
- mode: ingresstarget: 4222published: "4222"protocol: tcp
- mode: ingresstarget: 8222published: "8222"protocol: tcp
volumes:
- type: volumesource: nats-datatarget: /datavolume: {}
postgres:
environment:
POSTGRES_DB: fluxer
POSTGRES_PASSWORD: fluxer
POSTGRES_USER: fluxer
image: postgres:16-alpine
networks:
default: null
ports:
- mode: ingresstarget: 5432published: "5432"protocol: tcp
volumes:
- type: volumesource: postgres-datatarget: /var/lib/postgresql/datavolume: {}
valkey:
command:
- valkey-server
- --save
- ""
- --appendonly
- "no"
image: valkey/valkey:8.1.7-alpine
networks:
default: null
ports:
- mode: ingresstarget: 6379published: "6379"protocol: tcp
workspace:
build:
context: ~/Programs/fluxer/fluxer-git
dockerfile: .devcontainer/Dockerfile
command:
depends_on:
cassandra:
condition: service_started
required: true
elasticsearch:
condition: service_started
required: true
livekit:
condition: service_started
required: true
mailpit:
condition: service_started
required: true
nats:
condition: service_started
required: true
postgres:
condition: service_started
required: true
valkey:
condition: service_started
required: true
environment:
AWS_ACCESS_KEY_ID: fluxer
AWS_DEFAULT_REGION: us-east-1
AWS_EC2_METADATA_DISABLED: "true"
AWS_SECRET_ACCESS_KEY: fluxer-secret
DOCKER_HOST: unix:///var/run/docker.sock
FLUXER_ADMIN_BASE_PATH: /admin
FLUXER_ADMIN_ENDPOINT:
http://localhost:8088/admin
FLUXER_ADMIN_OAUTH_CLIENT_ID: "1234567890123456789"
FLUXER_ADMIN_OAUTH_CLIENT_SECRET: dev-admin-oauth-secret
FLUXER_ADMIN_OAUTH_REDIRECT_URI:
http://localhost:8088/admin/oauth2_callback
FLUXER_ADMIN_PORT: "3020"
FLUXER_ADMIN_SECRET_KEY_BASE: dev-admin-secret-key-base
FLUXER_API_CLIENT_ENDPOINT:
http://localhost:8088/api
FLUXER_API_ENDPOINT:
http://localhost:8088/api
FLUXER_API_PORT: "8080"
FLUXER_API_PRESIGNED_ATTACHMENT_UPLOADS_ENABLED: "true"
FLUXER_API_WORKER_ENABLE_VOICE_RECONCILIATION: "true"
FLUXER_API_WORKER_MODE: all_lanes
FLUXER_APP_DEV_PORT: "3000"
FLUXER_APP_ENDPOINT:
http://localhost:8088/
FLUXER_APP_PROXY_PORT: "8773"
FLUXER_BASE_DOMAIN: localhost
FLUXER_CAPTCHA_ENABLED: "false"
FLUXER_CAPTCHA_PROVIDER: none
FLUXER_CASSANDRA_HOSTS: cassandra
FLUXER_CASSANDRA_KEYSPACE: fluxer
FLUXER_CASSANDRA_LOCAL_DC: datacenter1
FLUXER_CASSANDRA_PASSWORD: fluxer
FLUXER_CASSANDRA_PORT: "9042"
FLUXER_CASSANDRA_USERNAME: fluxer
FLUXER_CLAMAV_ENABLED: "false"
FLUXER_CLIENT_IP_HEADER_NAME: x-forwarded-for
FLUXER_CONNECTION_INITIATION_SECRET: dev-connection-initiation-secret
FLUXER_DATABASE_BACKEND: postgres
FLUXER_DISABLE_RATE_LIMITS: "true"
FLUXER_DISCOVERY_ENABLED: "true"
FLUXER_EMAIL_ENABLED: "true"
FLUXER_EMAIL_FROM_EMAIL: dev@localhost
FLUXER_EMAIL_FROM_NAME: Fluxer Dev
FLUXER_EMAIL_PROVIDER: smtp
FLUXER_EMAIL_SMTP_HOST: mailpit
FLUXER_EMAIL_SMTP_PASSWORD: dev
FLUXER_EMAIL_SMTP_PORT: "1025"
FLUXER_EMAIL_SMTP_SECURE: "false"
FLUXER_EMAIL_SMTP_USERNAME: dev
FLUXER_ENV: development
FLUXER_GATEWAY_ENDPOINT: ws://localhost:8088/gateway
FLUXER_GATEWAY_LOGGER_LEVEL: info
FLUXER_GATEWAY_MEDIA_PROXY_ENDPOINT:
http://localhost:8088/media
FLUXER_GATEWAY_PORT: "8771"
FLUXER_GATEWAY_PRESENCE_PUSH_BUFFER_MAX_BYTES: "1048576"
FLUXER_GATEWAY_PRESENCE_PUSH_BUFFER_MAX_ENTRIES: "128"
FLUXER_GATEWAY_RPC_AUTH_TOKEN: dev-gateway-rpc-token
FLUXER_GATEWAY_STATIC_CDN_ENDPOINT:
http://localhost:8088/
FLUXER_GIF_PROVIDER: tenor
FLUXER_INTERNAL_API_ENDPOINT:
http://127.0.0.1:8080/
FLUXER_INTERNAL_GATEWAY_ENDPOINT:
http://127.0.0.1:8771/
FLUXER_INTERNAL_MEDIA_PROXY_ENDPOINT:
http://127.0.0.1:8082/
FLUXER_KV_URL: redis://valkey:6379/0
FLUXER_LIVEKIT_API_KEY: devkey
FLUXER_LIVEKIT_API_SECRET: secret
FLUXER_LIVEKIT_DEFAULT_REGION: '{"id":"local","name":"Local","emoji":"LC","latitude":59.3293,"longitude":18.0686}'
FLUXER_LIVEKIT_ENABLED: "true"
FLUXER_LIVEKIT_URL: ws://localhost:8088/livekit
FLUXER_LIVEKIT_WEBHOOK_URL:
http://localhost:8088/api/webhooks/livekit
FLUXER_MARKETING_BASE_PATH: /marketing
FLUXER_MARKETING_ENDPOINT:
http://localhost:8088/marketing
FLUXER_MARKETING_HOST: 0.0.0.0
FLUXER_MARKETING_PORT: "3010"
FLUXER_MARKETING_SECRET_KEY_BASE: dev-marketing-secret-key-base
FLUXER_MEDIA_ENDPOINT:
http://localhost:8088/media
FLUXER_MEDIA_PROXY_ENDPOINT:
http://127.0.0.1:8082/
FLUXER_MEDIA_PROXY_HOST: 0.0.0.0
FLUXER_MEDIA_PROXY_MODE: upload
FLUXER_MEDIA_PROXY_PORT: "8082"
FLUXER_MEDIA_PROXY_PUBLIC_ENDPOINT:
http://localhost:8088/media
FLUXER_MEDIA_PROXY_SECRET_KEY: dev-media-proxy-secret
FLUXER_MEDIA_PROXY_STORAGE_BACKEND: s3
FLUXER_MEDIA_PROXY_UPLOAD_RELAY_ENDPOINT:
http://localhost:8088/media
FLUXER_MEDIA_PROXY_UPLOAD_RELAY_KEEP_DIRECT_COUNTRIES: ""
FLUXER_MEDIA_PROXY_UPLOAD_RELAY_SECRET_BASE64: Zmx1eGVyLWRldi11cGxvYWQtcmVsYXktc2VjcmV0LTAwMDA=
FLUXER_NATS_JETSTREAM_URL: nats://nats:4222
FLUXER_NATS_URL: nats://nats:4222
FLUXER_NCMEC_ENABLED: "false"
FLUXER_PASSKEY_ADDITIONAL_ALLOWED_ORIGINS:
http://localhost,http//localhost:8088
FLUXER_PASSKEY_RP_ID: localhost
FLUXER_PASSKEY_RP_NAME: Fluxer Dev
FLUXER_POSTGRES_DATABASE: fluxer
FLUXER_POSTGRES_HOST: postgres
FLUXER_POSTGRES_KV_TABLE: fluxer_kv
FLUXER_POSTGRES_MAX_CONNECTIONS: "20"
FLUXER_POSTGRES_PASSWORD: fluxer
FLUXER_POSTGRES_PORT: "5432"
FLUXER_POSTGRES_SSL: "false"
FLUXER_POSTGRES_USERNAME: fluxer
FLUXER_PUBLIC_PORT: "8088"
FLUXER_PUBLIC_SCHEME: http
FLUXER_PUBLIC_URL:
http://localhost:8088/
FLUXER_S3_ACCESS_KEY_ID: fluxer
FLUXER_S3_BUCKET_CDN: fluxer
FLUXER_S3_BUCKET_DOWNLOADS: fluxer-downloads
FLUXER_S3_BUCKET_HARVESTS: fluxer-harvests
FLUXER_S3_BUCKET_REPORTS: fluxer-reports
FLUXER_S3_BUCKET_STATIC: fluxer-static
FLUXER_S3_BUCKET_UPLOADS: fluxer-uploads
FLUXER_S3_ENDPOINT:
http://127.0.0.1:8333/
FLUXER_S3_FORCE_PATH_STYLE: "true"
FLUXER_S3_PUBLIC_ENDPOINT:
http://localhost:8088/
FLUXER_S3_REGION: us-east-1
FLUXER_S3_SECRET_ACCESS_KEY: fluxer-secret
FLUXER_SEARCH_ENGINE: elasticsearch
FLUXER_SEARCH_PASSWORD: fluxer-dev-elasticsearch
FLUXER_SEARCH_TLS_REJECT_UNAUTHORIZED: "false"
FLUXER_SEARCH_URL:
http://elasticsearch:9200/
FLUXER_SEARCH_USERNAME: elastic
FLUXER_SELF_HOSTED: "true"
FLUXER_SMS_ENABLED: "false"
FLUXER_STATIC_CDN_DOMAIN: localhost
FLUXER_STATIC_CDN_ENDPOINT:
http://localhost:8088/
FLUXER_STATIC_DIR: fluxer_app/dist
FLUXER_STRIPE_ENABLED: "false"
FLUXER_SUDO_MODE_SECRET: dev-sudo-secret
FLUXER_SVC_CACHE_HARD_TTL_MS: "600000"
FLUXER_SVC_CACHE_TTL_MS: "30000"
FLUXER_SVC_MAX_CONCURRENT_REQUESTS: "64"
FLUXER_SVC_NATS_URL: nats://nats:4222
FLUXER_SVC_SHARD_COUNT: "1"
FLUXER_TEST_MODE_ENABLED: "false"
FLUXER_TRUST_CLIENT_IP_HEADER: "true"
FLUXER_VAPID_EMAIL: dev@localhost
FLUXER_VAPID_PRIVATE_KEY: dev-vapid-private-key
FLUXER_VAPID_PUBLIC_KEY: dev-vapid-public-key
KUBECONFIG: /workspaces/fluxer/.fluxer/k8s/local-kubeconfig
NODE_ENV: development
PUBLIC_BOOTSTRAP_API_ENDPOINT: /api
PUBLIC_BOOTSTRAP_API_PUBLIC_ENDPOINT:
http://localhost:8088/api
PUBLIC_BUILD_VERSION: dev
PUBLIC_RELEASE_CHANNEL: canary
extra_hosts:
- host.docker.internal=host-gateway
init: true
networks:
default: null
ports:
- mode: ingresstarget: 8000published: "8000"protocol: tcp
- mode: ingresstarget: 3000published: "3000"protocol: tcp
- mode: ingresstarget: 8088published: "8088"protocol: tcp
- mode: ingresstarget: 8080published: "8080"protocol: tcp
- mode: ingresstarget: 8771published: "8771"protocol: tcp
- mode: ingresstarget: 8082published: "8082"protocol: tcp
- mode: ingresstarget: 3010published: "3010"protocol: tcp
- mode: ingresstarget: 3020published: "3020"protocol: tcp
- mode: ingresstarget: 8100published: "8100"protocol: tcp
- mode: ingresstarget: 8101published: "8101"protocol: tcp
- mode: ingresstarget: 8102published: "8102"protocol: tcp
- mode: ingresstarget: 8103published: "8103"protocol: tcp
- mode: ingresstarget: 8104published: "8104"protocol: tcp
- mode: ingresstarget: 8105published: "8105"protocol: tcp
- mode: ingresstarget: 8106published: "8106"protocol: tcp
- mode: ingresstarget: 8107published: "8107"protocol: tcp
- mode: ingresstarget: 8108published: "8108"protocol: tcp
- mode: ingresstarget: 8109published: "8109"protocol: tcp
- mode: ingresstarget: 8110published: "8110"protocol: tcp
- mode: ingresstarget: 8111published: "8111"protocol: tcp
- mode: ingresstarget: 8112published: "8112"protocol: tcp
- mode: ingresstarget: 8113published: "8113"protocol: tcp
- mode: ingresstarget: 8114published: "8114"protocol: tcp
- mode: ingress
target: 8115
published: "8115"
protocol: tcp
- mode: ingresstarget: 8116published: "8116"protocol: tcp
- mode: ingresstarget: 8117published: "8117"protocol: tcp
- mode: ingresstarget: 8118published: "8118"protocol: tcp
- mode: ingresstarget: 8119published: "8119"protocol: tcp
- mode: ingresstarget: 8120published: "8120"protocol: tcp
- mode: ingresstarget: 8121published: "8121"protocol: tcp
- mode: ingresstarget: 8122published: "8122"protocol: tcp
- mode: ingresstarget: 8123published: "8123"protocol: tcp
- mode: ingresstarget: 8124published: "8124"protocol: tcp
- mode: ingresstarget: 8125published: "8125"protocol: tcp
- mode: ingresstarget: 8333published: "3900"protocol: tcp
- mode: ingresstarget: 8888published: "8888"protocol: tcp
- mode: ingresstarget: 9333published: "9333"protocol: tcp
- mode: ingresstarget: 9340published: "9340"protocol: tcp
- mode: ingresstarget: 23646published: "23646"protocol: tcp
volumes:
- type: bindsource: ~/Programs/fluxer/fluxer-gittarget: /workspaces/fluxerbind: {}
- type: volumesource: root-node-modulestarget: /workspaces/fluxer/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-node-modulestarget: /workspaces/fluxer/fluxer_api/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-node-modulestarget: /workspaces/fluxer/fluxer_app/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-desktop-node-modulestarget: /workspaces/fluxer/fluxer_desktop/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-marketing-node-modulestarget: /workspaces/fluxer/fluxer_marketing/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-admin-node-modulestarget: /workspaces/fluxer/fluxer_admin/node_modulesvolume:nocopy: true
- type: volumesource: package-config-node-modulestarget: /workspaces/fluxer/packages/config/node_modulesvolume:nocopy: true
- type: volumesource: package-constants-node-modulestarget: /workspaces/fluxer/packages/constants/node_modulesvolume:nocopy: true
- type: volumesource: package-date-utils-node-modulestarget: /workspaces/fluxer/packages/date_utils/node_modulesvolume:nocopy: true
- type: volumesource: package-errors-node-modules
target: /workspaces/fluxer/packages/errors/node_modules
volume:
nocopy: true
- type: volumesource: package-geo-utils-node-modulestarget: /workspaces/fluxer/packages/geo_utils/node_modulesvolume:nocopy: true
- type: volumesource: package-hono-node-modulestarget: /workspaces/fluxer/packages/hono/node_modulesvolume:nocopy: true
- type: volumesource: package-hono-types-node-modulestarget: /workspaces/fluxer/packages/hono_types/node_modulesvolume:nocopy: true
- type: volumesource: package-i18n-node-modulestarget: /workspaces/fluxer/packages/i18n/node_modulesvolume:nocopy: true
- type: volumesource: package-instance-bootstrap-node-modulestarget: /workspaces/fluxer/packages/instance_bootstrap/node_modulesvolume:nocopy: true
- type: volumesource: package-ip-utils-node-modulestarget: /workspaces/fluxer/packages/ip_utils/node_modulesvolume:nocopy: true
- type: volumesource: package-limits-node-modulestarget: /workspaces/fluxer/packages/limits/node_modulesvolume:nocopy: true
- type: volumesource: package-logger-node-modulestarget: /workspaces/fluxer/packages/logger/node_modulesvolume:nocopy: true
- type: volumesource: package-openapi-node-modulestarget: /workspaces/fluxer/packages/openapi/node_modulesvolume:nocopy: true
- type: volumesource: package-schema-node-modulestarget: /workspaces/fluxer/packages/schema/node_modulesvolume:nocopy: true
- type: volumesource: package-snowflake-node-modulestarget: /workspaces/fluxer/packages/snowflake/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-cache-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/cache/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-captcha-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/captcha/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-cassandra-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/cassandra/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-elasticsearch-search-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/elasticsearch_search/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-email-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/email/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-geoip-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/geoip/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-http-client-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/http_client/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-initialization-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/initialization/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-kv-client-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/kv_client/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-locale-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/locale/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-media-proxy-utils-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/media_proxy_utils/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-mime-utils-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/mime_utils/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-nats-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/nats/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-rate-limit-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/rate_limit/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-sms-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/sms/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-virus-scan-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/virus_scan/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-api-worker-node-modulestarget: /workspaces/fluxer/fluxer_api/pkgs/worker/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-list-utils-node-modulestarget: /workspaces/fluxer/fluxer_app/pkgs/list_utils/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-livekit-client-node-modulestarget: /workspaces/fluxer/fluxer_app/pkgs/livekit-client/node_modulesvolume:nocopy: true
- type: volumesource: fluxer-app-number-utils-node-modulestarget: /workspaces/fluxer/fluxer_app/pkgs/number_utils/node_modulesvolume:nocopy: true
- type: volumesource: pnpm-storetarget: /home/vscode/.local/share/pnpm/storevolume: {}
- type: volumesource: cargo-registrytarget: /home/vscode/.cargo/registryvolume: {}
- type: volumesource: cargo-gittarget: /home/vscode/.cargo/gitvolume: {}
- type: volumesource: rust-targettarget: /workspaces/fluxer/targetvolume: {}
- type: bindsource: /var/run/docker.sock
target: /var/run/docker.sock
networks:
default:
name: fluxer-dev_default
volumes:
cargo-git:
name: fluxer-dev_cargo-git
cargo-registry:
name: fluxer-dev_cargo-registry
cassandra-data:
name: fluxer-dev_cassandra-data
elasticsearch-data:
name: fluxer-dev_elasticsearch-data
fluxer-admin-node-modules:
name: fluxer-dev_fluxer-admin-node-modules
fluxer-api-cache-node-modules:
name: fluxer-dev_fluxer-api-cache-node-modules
fluxer-api-captcha-node-modules:
name: fluxer-dev_fluxer-api-captcha-node-modules
fluxer-api-cassandra-node-modules:
name: fluxer-dev_fluxer-api-cassandra-node-modules
fluxer-api-elasticsearch-search-node-modules:
name: fluxer-dev_fluxer-api-elasticsearch-search-node-modules
fluxer-api-email-node-modules:
name: fluxer-dev_fluxer-api-email-node-modules
fluxer-api-geoip-node-modules:
name: fluxer-dev_fluxer-api-geoip-node-modules
fluxer-api-http-client-node-modules:
name: fluxer-dev_fluxer-api-http-client-node-modules
fluxer-api-initialization-node-modules:
name: fluxer-dev_fluxer-api-initialization-node-modules
fluxer-api-kv-client-node-modules:
name: fluxer-dev_fluxer-api-kv-client-node-modules
fluxer-api-locale-node-modules:
name: fluxer-dev_fluxer-api-locale-node-modules
fluxer-api-media-proxy-utils-node-modules:
name: fluxer-dev_fluxer-api-media-proxy-utils-node-modules
fluxer-api-mime-utils-node-modules:
name: fluxer-dev_fluxer-api-mime-utils-node-modules
fluxer-api-nats-node-modules:
name: fluxer-dev_fluxer-api-nats-node-modules
fluxer-api-node-modules:
name: fluxer-dev_fluxer-api-node-modules
fluxer-api-rate-limit-node-modules:
name: fluxer-dev_fluxer-api-rate-limit-node-modules
fluxer-api-sms-node-modules:
name: fluxer-dev_fluxer-api-sms-node-modules
fluxer-api-virus-scan-node-modules:
name: fluxer-dev_fluxer-api-virus-scan-node-modules
fluxer-api-worker-node-modules:
name: fluxer-dev_fluxer-api-worker-node-modules
fluxer-app-list-utils-node-modules:
name: fluxer-dev_fluxer-app-list-utils-node-modules
fluxer-app-livekit-client-node-modules:
name: fluxer-dev_fluxer-app-livekit-client-node-modules
fluxer-app-node-modules:
name: fluxer-dev_fluxer-app-node-modules
fluxer-app-number-utils-node-modules:
name: fluxer-dev_fluxer-app-number-utils-node-modules
fluxer-desktop-node-modules:
name: fluxer-dev_fluxer-desktop-node-modules
fluxer-marketing-node-modules:
name: fluxer-dev_fluxer-marketing-node-modules
mailpit-data:
name: fluxer-dev_mailpit-data
meilisearch-data:
name: fluxer-dev_meilisearch-data
nats-data:
name: fluxer-dev_nats-data
package-config-node-modules:
name: fluxer-dev_package-config-node-modules
package-constants-node-modules:
name: fluxer-dev_package-constants-node-modules
package-date-utils-node-modules:
name: fluxer-dev_package-date-utils-node-modules
package-errors-node-modules:
name: fluxer-dev_package-errors-node-modules
package-geo-utils-node-modules:
name: fluxer-dev_package-geo-utils-node-modules
package-hono-node-modules:
name: fluxer-dev_package-hono-node-modules
package-hono-types-node-modules:
name: fluxer-dev_package-hono-types-node-modules
package-i18n-node-modules:
name: fluxer-dev_package-i18n-node-modules
package-instance-bootstrap-node-modules:
name: fluxer-dev_package-instance-bootstrap-node-modules
package-ip-utils-node-modules:
name: fluxer-dev_package-ip-utils-node-modules
package-limits-node-modules:
name: fluxer-dev_package-limits-node-modules
package-logger-node-modules:
name: fluxer-dev_package-logger-node-modules
package-openapi-node-modules:
name: fluxer-dev_package-openapi-node-modules
package-schema-node-modules:
name: fluxer-dev_package-schema-node-modules
package-snowflake-node-modules:
name: fluxer-dev_package-snowflake-node-modules
pnpm-store:
name: fluxer-dev_pnpm-store
postgres-data:
name: fluxer-dev_postgres-data
root-node-modules:
name: fluxer-dev_root-node-modules
rust-target:
name: fluxer-dev_rust-target
[3712 ms] Start: Run: docker inspect --type image erlang:28.5.0.1
[4615 ms] Start: Run: docker-credential-secret get
[8654 ms] Docker Compose override file for building image:
services:
workspace:
build:
dockerfile: /tmp/devcontainercli-me/container-features/0.86.1-1782147374664/Dockerfile-with-features
args:
- BUILDKIT_INLINE_CACHE=1
- _DEV_CONTAINERS_BASE_IMAGE=dev_container_auto_added_stage_label
[8655 ms] Start: Run: docker compose --project-name fluxer-dev -f ~/Programs/fluxer/fluxer-git/.devcontainer/docker-compose.yml -f ~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data/docker-compose/docker-compose.devcontainer.build-1782147374667.yml build workspace cassandra valkey nats livekit elasticsearch
open ~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data/docker-compose/docker-compose.devcontainer.build-1782147374667.yml: permission denied
[8746 ms] Error: Command failed: docker compose --project-name fluxer-dev -f ~/Programs/fluxer/fluxer-git/.devcontainer/docker-compose.yml -f ~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data/docker-compose/docker-compose.devcontainer.build-1782147374667.yml build workspace cassandra valkey nats livekit elasticsearch
[8746 ms] at mp (~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:432:525)
[8746 ms] at async RV (~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:432:2475)
[8746 ms] at async SV (~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:412:3910)
[8746 ms] at async A9 (~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:485:4822)
[8746 ms] at async kI (~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:485:5768)
[8747 ms] at async vZ (~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:666:205)
[8747 ms] at async GZ (~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:665:15080)
[8747 ms] at async ~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js:485:1917
[8755 ms] Exit code 1
[8759 ms] Command failed: /usr/share/code/code ~/.vscode/extensions/ms-vscode-remote.remote-containers-0.459.1/dist/spec-node/devContainersSpecCLI.js up --user-data-folder ~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data --container-session-data-folder /tmp/devcontainers-57d1147d-880e-449f-b8d8-6b68b68136401782147365239 --workspace-folder ~/Programs/fluxer/fluxer-git --workspace-mount-consistency cached --gpu-availability detect --id-label devcontainer.local_folder=~/Programs/fluxer/fluxer-git --id-label devcontainer.config_file=~/Programs/fluxer/fluxer-git/.devcontainer/devcontainer.json --log-level debug --log-format json --config ~/Programs/fluxer/fluxer-git/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --experimental-lockfile --mount type=volume,source=vscode,target=/vscode,external=true --mount type=bind,source=/run/user/1000/wayland-0,target=/tmp/vscode-wayland-ec7553ec-4e3c-48cd-8c9a-e29377028db6.sock --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root --include-configuration --include-merged-configuration
[8759 ms] Exit code 1
```
0 comments
Deleted comment