@@ -84,39 +84,62 @@ An example `docker-compose` of the setup is as follows:
8484
8585```
8686services:
87+ # Fix Ownership of HTTP Server
88+ # Because docker volumes are owned by root by default
89+ # And our images follow best-practise and don't run as root
90+ change-vol-ownerships:
91+ image: node:22-alpine3.22
92+ user: 'root'
93+ volumes:
94+ - http-server-data:/data/http-server
95+ entrypoint: ['sh', '-c', 'chown -R node:node /data/http-server']
96+
8797 http-server:
88- build:
89- context: .
90- dockerfile: sofietv/package-manager-http-server
98+ image: ghcr.io/sofie-automation/sofie-package-manager-http-server:v1.52.0
9199 environment:
92100 HTTP_SERVER_BASE_PATH: '/data/http-server'
93101 ports:
94102 - '8080:8080'
95103 volumes:
96104 - http-server-data:/data/http-server
105+ depends_on:
106+ change-vol-ownerships:
107+ condition: service_completed_successfully
97108
98109 workforce:
99- build:
100- context: .
101- dockerfile: sofietv/package-manager-workforce
110+ image: ghcr.io/sofie-automation/sofie-package-manager-workforce:v1.52.0
102111 ports:
103112 - '8070:8070' # this needs to be exposed so that the workers can connect back to it
113+ # environment:
114+ # - WORKFORCE_ALLOW_NO_APP_CONTAINERS=1 # Uncomment this if your workers are in docker, to disable the check for no appContainers
115+
116+ # You can deploy workers in docker too, which requires some additional configuration of your containers.
117+ # This does not support FILESHARE accessors, they must be explicitly mounted as volumes
118+ # You will likely want to deploy more than 1 worker
119+ # worker0:
120+ # image: ghcr.io/sofie-automation/sofie-package-manager-worker:v1.52.0
121+ # command:
122+ # - --logLevel=debug
123+ # - --workforceURL=ws://workforce:8070
124+ # - --costMultiplier=0.5
125+ # - --resourceId=docker
126+ # - --networkIds=networkDocker
127+ # volumes:
128+ # - ./media-source:/data/source:ro
104129
105130 package-manager:
106131 depends_on:
107132 - http-server
108133 - workforce
109- build:
110- context: .
111- dockerfile: sofietv/package-manager-package-manager
134+ image: ghcr.io/sofie-automation/sofie-package-manager-package-manager:v1.52.0
112135 environment:
113136 CORE_HOST: '172.18.0.1' # the address for connecting back to Sofie core from this image
114137 CORE_PORT: '3000'
115138 DEVICE_ID: 'my-package-manager-id'
116139 DEVICE_TOKEN: 'some-secret'
117140 WORKFORCE_URL: 'ws://workforce:8070' # referencing the workforce component above
118141 PACKAGE_MANAGER_PORT: '8060'
119- PACKAGE_MANAGER_URL: 'ws://insert-service-ip-here:8060' # the workers connect back to this address, so it needs to be accessible from CasparCG
142+ PACKAGE_MANAGER_URL: 'ws://insert-service-ip-here:8060' # the workers connect back to this address, so it needs to be accessible from the workers
120143 # CONCURRENCY: 10 # How many expectation states can be evaluated at the same time
121144 ports:
122145 - '8060:8060'
0 commit comments