Storate container simplification

Only one is really needed for large storage for the dbstore container.  The demo containers can contain their own data -- it's small
and the containers are made for demonstration anyway.
This commit is contained in:
Michael Hohn
2024-09-13 12:04:30 -07:00
committed by =Michael Hohn
parent 727381dc5a
commit f60b55f181
4 changed files with 44 additions and 58 deletions

View File

@@ -4,11 +4,8 @@ FROM busybox
# This data container holds data from existing runs. It cannot be built without # This data container holds data from existing runs. It cannot be built without
# ready data. # ready data.
# Mirror parts of the host directory structure in the container # Mirror parts of the host directory structure in the container
COPY tmp/dbstore-data /data/mrvacommander/dbstore-data COPY tmp/dbstore-data /data/mrvacommander/dbstore-data
COPY tmp/scratch /data/mrvacommander/qldbtools/scratch
# Just run sh if this container is ever started # Just run sh if this container is ever started
CMD ["sh"] CMD ["sh"]

View File

@@ -3,17 +3,34 @@ services:
image: ghcr.io/hohn/mrvadata:0.1.24 image: ghcr.io/hohn/mrvadata:0.1.24
container_name: mrvadata container_name: mrvadata
volumes: volumes:
- mrvadata:/data/mrvacommander - mrvadata:/data/mrvacommander/dbstore-data
networks: networks:
- backend - backend
client-qldbtools: dbstore:
image: ghcr.io/hohn/client-qldbtools-container:0.1.24 image: minio/minio:RELEASE.2024-06-11T03-13-30Z
volumes: container_name: dbstore
# data at /data/mrvacommander/qldbtools/scratch ports:
- mrvadata:/data/mrvacommander - "9000:9000"
- "9001:9001"
env_file:
- path: .env.container
required: true
command: server /data/mrvacommander/dbstore-data --console-address ":9001"
depends_on: depends_on:
- mrvadata - 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: networks:
- backend - backend
@@ -22,10 +39,7 @@ services:
# XX: redirect by changing code or using nginx proxy # 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) # 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 image: ghcr.io/hohn/client-ghmrva-container:0.1.24
volumes: # XX: Include codeql in container if needed; no attached storage container.
- mrvadata:/data/mrvacommander
depends_on:
- mrvadata
networks: networks:
- backend - backend
@@ -33,12 +47,9 @@ services:
image: ghcr.io/hohn/code-server-initialized:0.1.24 image: ghcr.io/hohn/code-server-initialized:0.1.24
ports: ports:
- "9080:9080" - "9080:9080"
volumes: # XX: Include codeql binary in code-server (if it's not there already)
- mrvadata:/data/mrvacommander
environment: environment:
- PASSWORD=mrva - PASSWORD=mrva
depends_on:
- mrvadata
rabbitmq: rabbitmq:
image: rabbitmq:3-management image: rabbitmq:3-management
@@ -75,25 +86,6 @@ services:
networks: networks:
- backend - 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: artifactstore:
image: minio/minio:RELEASE.2024-06-11T03-13-30Z image: minio/minio:RELEASE.2024-06-11T03-13-30Z
container_name: artifactstore container_name: artifactstore

View File

@@ -1,27 +1,24 @@
digraph docker_compose { digraph G {
rankdir=LR; // Define nodes
mrvadata [label="mrvadata" shape=box];
node [shape=box]; client_qldbtools [label="client-qldbtools" shape=box];
client_ghmrva [label="client-ghmrva" shape=box];
mrvadata [label="mrvadata" color=lightblue]; code_server [label="code-server" shape=box];
"client-qldbtools" [label="client-qldbtools" color=lightgreen]; rabbitmq [label="rabbitmq" shape=box];
"client-ghmrva" [label="client-ghmrva" color=lightgreen]; server [label="server" shape=box];
"code-server" [label="code-server" color=lightgreen]; dbstore [label="dbstore" shape=box];
rabbitmq [label="rabbitmq" color=lightcoral]; artifactstore [label="artifactstore" shape=box];
server [label="server" color=lightcoral]; agent [label="agent" shape=box];
dbstore [label="dbstore" color=lightcoral];
artifactstore [label="artifactstore" color=lightcoral]; // Define edges (dependencies)
agent [label="agent" color=lightcoral]; server -> rabbitmq;
server -> dbstore;
// Dependencies server -> artifactstore;
"client-qldbtools" -> mrvadata;
"client-ghmrva" -> mrvadata;
"code-server" -> mrvadata;
dbstore -> mrvadata; dbstore -> mrvadata;
"server" -> rabbitmq;
"server" -> dbstore;
"server" -> artifactstore;
agent -> rabbitmq; agent -> rabbitmq;
agent -> dbstore; agent -> dbstore;
agent -> artifactstore; agent -> artifactstore;
// Define styling
edge [arrowhead=normal];
} }

Binary file not shown.