diff --git a/client/containers/mrvadata/Dockerfile b/client/containers/mrvadata/Dockerfile index 5971e5a..87dbb98 100644 --- a/client/containers/mrvadata/Dockerfile +++ b/client/containers/mrvadata/Dockerfile @@ -4,11 +4,8 @@ FROM busybox # This data container holds data from existing runs. It cannot be built without # ready data. - # Mirror parts of the host directory structure in the container COPY tmp/dbstore-data /data/mrvacommander/dbstore-data -COPY tmp/scratch /data/mrvacommander/qldbtools/scratch - # Just run sh if this container is ever started CMD ["sh"] diff --git a/docker-compose-demo.yml b/docker-compose-demo.yml index 4f90cfd..3755f5e 100644 --- a/docker-compose-demo.yml +++ b/docker-compose-demo.yml @@ -3,17 +3,34 @@ services: image: ghcr.io/hohn/mrvadata:0.1.24 container_name: mrvadata volumes: - - mrvadata:/data/mrvacommander + - mrvadata:/data/mrvacommander/dbstore-data networks: - backend - client-qldbtools: - image: ghcr.io/hohn/client-qldbtools-container:0.1.24 - volumes: - # data at /data/mrvacommander/qldbtools/scratch - - mrvadata:/data/mrvacommander + dbstore: + image: minio/minio:RELEASE.2024-06-11T03-13-30Z + container_name: dbstore + ports: + - "9000:9000" + - "9001:9001" + env_file: + - path: .env.container + required: true + command: server /data/mrvacommander/dbstore-data --console-address ":9001" depends_on: - mrvadata + # The mrvadata volume has content of ./dbstore-data, so the volume mount + # below is equivalent of this original: + # volumes: + # - ./dbstore-data:/data + volumes: + - mrvadata:/data + networks: + - backend + + client-qldbtools: + image: ghcr.io/hohn/client-qldbtools-container:0.1.24 + # XX: Copy client/qldbtools/scratch into this container networks: - backend @@ -22,10 +39,7 @@ services: # XX: redirect by changing code or using nginx proxy # client.Get(fmt.Sprintf("http://localhost:8080/repos/%s/code-scanning/codeql/variant-analyses/%d", controller, runId), &response) image: ghcr.io/hohn/client-ghmrva-container:0.1.24 - volumes: - - mrvadata:/data/mrvacommander - depends_on: - - mrvadata + # XX: Include codeql in container if needed; no attached storage container. networks: - backend @@ -33,12 +47,9 @@ services: image: ghcr.io/hohn/code-server-initialized:0.1.24 ports: - "9080:9080" - volumes: - - mrvadata:/data/mrvacommander + # XX: Include codeql binary in code-server (if it's not there already) environment: - PASSWORD=mrva - depends_on: - - mrvadata rabbitmq: image: rabbitmq:3-management @@ -75,25 +86,6 @@ services: networks: - backend - dbstore: - image: minio/minio:RELEASE.2024-06-11T03-13-30Z - container_name: dbstore - ports: - - "9000:9000" - - "9001:9001" - env_file: - - path: .env.container - required: true - command: server /data/mrvacommander/dbstore-data --console-address ":9001" - depends_on: - - mrvadata - volumes: - # XX: use multiple storage containers - # data at /data/mrvacommander/dbstore-data - - mrvadata:/data/mrvacommander - networks: - - backend - artifactstore: image: minio/minio:RELEASE.2024-06-11T03-13-30Z container_name: artifactstore diff --git a/notes/docker-demo-container-deps.dot b/notes/docker-demo-container-deps.dot index 71c3397..9acad6d 100644 --- a/notes/docker-demo-container-deps.dot +++ b/notes/docker-demo-container-deps.dot @@ -1,27 +1,24 @@ -digraph docker_compose { - rankdir=LR; - - node [shape=box]; - - mrvadata [label="mrvadata" color=lightblue]; - "client-qldbtools" [label="client-qldbtools" color=lightgreen]; - "client-ghmrva" [label="client-ghmrva" color=lightgreen]; - "code-server" [label="code-server" color=lightgreen]; - rabbitmq [label="rabbitmq" color=lightcoral]; - server [label="server" color=lightcoral]; - dbstore [label="dbstore" color=lightcoral]; - artifactstore [label="artifactstore" color=lightcoral]; - agent [label="agent" color=lightcoral]; - - // Dependencies - "client-qldbtools" -> mrvadata; - "client-ghmrva" -> mrvadata; - "code-server" -> mrvadata; +digraph G { + // Define nodes + mrvadata [label="mrvadata" shape=box]; + client_qldbtools [label="client-qldbtools" shape=box]; + client_ghmrva [label="client-ghmrva" shape=box]; + code_server [label="code-server" shape=box]; + rabbitmq [label="rabbitmq" shape=box]; + server [label="server" shape=box]; + dbstore [label="dbstore" shape=box]; + artifactstore [label="artifactstore" shape=box]; + agent [label="agent" shape=box]; + + // Define edges (dependencies) + server -> rabbitmq; + server -> dbstore; + server -> artifactstore; dbstore -> mrvadata; - "server" -> rabbitmq; - "server" -> dbstore; - "server" -> artifactstore; agent -> rabbitmq; agent -> dbstore; agent -> artifactstore; + + // Define styling + edge [arrowhead=normal]; } diff --git a/notes/docker-demo-container-deps.pdf b/notes/docker-demo-container-deps.pdf index 39b1f1d..6a45e16 100644 Binary files a/notes/docker-demo-container-deps.pdf and b/notes/docker-demo-container-deps.pdf differ