Agree, These lessons expects user to be absolute beginner, while secure coding is essential for production systems beginners might get buried inside too many details around the over all code and over kill . Homework is just for practicing learned concept.
Thanks for the series. I see the future lessons are under subscription. Is there a plan to make them available for free in future?
Intermittently I would share some of them.
I'm not seeing Remote - Containers in the extensions: marketplace. Has this been replaced with something else?
search for Dev Containers, it is supposed to be same thing
How is Logger Class in Homework thread safe? I see all the prints/log in clear one line.
Agree, These lessons expects user to be absolute beginner, while secure coding is essential for production systems beginners might get buried inside too many details around the over all code and over kill . Homework is just for practicing learned concept.
I am able to build but not start the docker container. Container exit for me.
I see following output when I run "docker-compose up --build" ,
#11 exporting to image
#11 exporting layers done
#11 exporting manifest sha256:6b6e117ab0d5780960fa82cc58ca7abec43b08d65e24bc71c43136a6e728186f done
#11 exporting config sha256:155f50540f161a7cbd584012643d4b5b5b21915c73a346c48cd4142700b1c726 done
#11 exporting attestation manifest sha256:fd75bded578544b83971ef068c617fea70e55358639cb9fb542ae073cd37919e 0.0s done
#11 exporting manifest list sha256:fee9997c4fbd2906f6361e7c7704a0ac49aea50b7c1345fcb4dde5f4c1d6bff7 0.0s done
#11 naming to docker.io/library/distributed-log-processor-logger:latest
#11 naming to docker.io/library/distributed-log-processor-logger:latest done
#11 unpacking to docker.io/library/distributed-log-processor-logger:latest 0.0s done
#11 DONE 0.1s
#12 resolving provenance for metadata file
#12 DONE 0.0s
[+] Running 2/2
✔ distributed-log-processor-logger Built 0.0s
✔ Container distributed-log-processor-logger-1 Recreated 0.1s
Attaching to logger-1
logger-1 exited with code 0
rohit@rohit-Z790-UD:~/Projects/distributed-log-processor$
Check docker container logs if any
You should see something like this
"@sd-MacBook-Air distributed-log-processor % docker compose up --build
[+] Building 6.1s (12/12) FINISHED
=> [internal] load local bake definitions 0.0s
=> => reading from stdin 667B 0.0s
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 313B 0.0s
=> [internal] load metadata for docker.io/library/python:3.9-slim 5.7s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [1/5] FROM docker.io/library/python:3.9-slim@sha256:2d97f6910b1 0.0s
=> => resolve docker.io/library/python:3.9-slim@sha256:2d97f6910b1 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 93B 0.0s
=> CACHED [2/5] WORKDIR /app 0.0s
=> CACHED [3/5] COPY requirements.txt . 0.0s
=> CACHED [4/5] RUN pip install --no-cache-dir -r requirements.txt 0.0s
=> CACHED [5/5] COPY . . 0.0s
=> exporting to image 0.1s
=> => exporting layers 0.0s
=> => exporting manifest sha256:05a494cea3f1f76549a2471cef4a987cd5 0.0s
=> => exporting config sha256:95cb1ccf63b728dad01ff3f09ae3b8ef061d 0.0s
=> => exporting attestation manifest sha256:c4168983a15265cdbe3323 0.0s
=> => exporting manifest list sha256:1a09fc7fad34b475e9783bc5de7f7 0.0s
=> => naming to docker.io/library/distributed-log-processor-logger 0.0s
=> => unpacking to docker.io/library/distributed-log-processor-log 0.0s
=> resolving provenance for metadata file 0.0s
[+] Running 2/2
✔ distributed-log-processor-logger Built 0.0s
✔ Container distributed-log-processor-logger-1 Recreated 0.1s
Attaching to logger-1
logger-1 | Starting distributed logger service...
logger-1 | Log level set to: INFO
logger-1 | [2026-02-27 15:26:55] Logger service is running. This will be part of our distributed system!
logger-1 | [2026-02-27 15:27:00] Logger service is running. This will be part of our distributed system!
logger-1 | [2026-02-27 15:27:05] Logger service is running. This will be part of our distributed system!
"