Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V0.0.11 #15

Merged
merged 16 commits into from
Mar 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
node_modules
dist
40 changes: 5 additions & 35 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,50 +1,20 @@
# Build stage
FROM node:lts-alpine AS build

FROM node:lts-alpine
# Set current working directory
WORKDIR /ldes-solid-server

# Copy the dockerfile's context's community server files
COPY . .

# Install and build the Solid community server (prepare script cannot run in wd)
# Install and build the LDES component for the Community Solid Server
RUN npm ci --unsafe-perm && npm run build

# Prepare and install an instance of the CSS + LDES
RUN cd server
RUN npm install

# Runtime stage
FROM node:lts-alpine

# Add contact informations for questions about the container
LABEL maintainer="Solid Community Server Docker Image Maintainer <[email protected]>"

# Container config & data dir for volume sharing
# Defaults to filestorage with /data directory (passed through CMD below)
RUN mkdir /config /data /examples

# Set current directory
WORKDIR /ldes-solid-server



COPY ./server/examples/ /examples/

# Copy runtime files from build stage
COPY --from=build /ldes-solid-server/package.json .
COPY --from=build /ldes-solid-server/config ./config
COPY --from=build /ldes-solid-server/dist ./dist
COPY --from=build /ldes-solid-server/node_modules ./node_modules
COPY --from=build /ldes-solid-server/server/node_modules ./server/node_modules
WORKDIR /ldes-solid-server/server

# Informs Docker that the container listens on the specified network port at runtime
EXPOSE 3000

WORKDIR /ldes-solid-server/server

# Set command run by the container
ENTRYPOINT [ "npx", "community-solid-server" ]

# By default run in filemode (overriden if passing alternative arguments or env vars)
ENV CSS_CONFIG=/examples/config-ldes.json
ENV CSS_ROOT_FILE_PATH=/data
ENTRYPOINT [ "npx", "@solid/community-server" ]
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ npm start
# Install the server
npm install ldes-solid-server
# Start the server
npx community-solid-server -c config.json -f ./data
npx @solid/community-server -c config.json -f ./data
```

#### Required Configuration
Expand Down
11 changes: 8 additions & 3 deletions config/ldp/handler/default.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"@context": "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^5.0.0/components/context.jsonld",
"@context": "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^7.0.0/components/context.jsonld",
"import": [
"css:config/ldp/handler/components/authorizer.json",
"css:config/ldp/handler/components/error-handler.json",
Expand All @@ -14,7 +14,6 @@
"@id": "urn:solid-server:default:LdpHandler",
"@type": "ParsingHttpHandler",
"args_requestParser": { "@id": "urn:solid-server:default:RequestParser" },
"args_metadataCollector": { "@id": "urn:solid-server:default:OperationMetadataCollector" },
"args_errorHandler": { "@id": "urn:solid-server:default:ErrorHandler" },
"args_responseWriter": { "@id": "urn:solid-server:default:ResponseWriter" },
"args_operationHandler": {
Expand All @@ -38,7 +37,13 @@
},
"args_preferenceParser": { "@id": "urn:solid-server:default:PreferenceParser" },
"args_metadataParser": { "@id": "urn:solid-server:default:MetadataParser" },
"args_conditionsParser": { "@type": "BasicConditionsParser" },
"args_conditionsParser": {
"@type": "BasicConditionsParser",
"eTagHandler": {
"@id": "urn:solid-server:default:ETagHandler",
"@type": "BasicETagHandler"
}
},
"args_bodyParser": {
"@type": "WaterfallHandler",
"handlers": [
Expand Down
68 changes: 46 additions & 22 deletions config/ldp/metadata-writer/default.json
Original file line number Diff line number Diff line change
@@ -1,45 +1,69 @@
{
"@context": "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^5.0.0/components/context.jsonld",
"import": [
"@context": "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^7.0.0/components/context.jsonld",
"import": [
"css:config/ldp/metadata-writer/writers/allow-accept.json",
"css:config/ldp/metadata-writer/writers/content-type.json",
"css:config/ldp/metadata-writer/writers/cookie.json",
"css:config/ldp/metadata-writer/writers/link-rel.json",
"css:config/ldp/metadata-writer/writers/link-rel-metadata.json",
"css:config/ldp/metadata-writer/writers/mapped.json",
"css:config/ldp/metadata-writer/writers/modified.json",
"css:config/ldp/metadata-writer/writers/wac-allow.json",
"css:config/ldp/metadata-writer/writers/range.json",
"css:config/ldp/metadata-writer/writers/storage-description.json",
"css:config/ldp/metadata-writer/writers/www-auth.json"
],
"@graph": [
{
],
"@graph": [
{
"comment": "Converts all triples with the given predicate to headers of the given type.",
"@id": "urn:ldes-server:default:MetadataWriter_Mapped",
"@id": "urn:solid-server:default:MetadataWriter_Mapped",
"@type": "MappedMetadataWriter",
"headerMap": [
{
"MappedMetadataWriter:_headerMap_key": "urn:npm:solid:community-server:http:location",
"MappedMetadataWriter:_headerMap_value": "Location"
},
{
"MappedMetadataWriter:_headerMap_key": "urn:npm:solid:community-server:http:cache_control",
"MappedMetadataWriter:_headerMap_value": "Cache-Control"
"MappedMetadataWriter:_headerMap_key": "urn:npm:solid:community-server:http:cache_control",
"MappedMetadataWriter:_headerMap_value": "Cache-Control"
}
]

},{
},
{
"comment": "Adds metadata to the response based on the RDF metadata.",
"@id": "urn:solid-server:default:MetadataWriter",
"@type": "ParallelHandler",
"handlers": [
{ "@id": "urn:solid-server:default:MetadataWriter_AllowAccept" },
{ "@id": "urn:solid-server:default:MetadataWriter_ContentType" },
{ "@id": "urn:solid-server:default:MetadataWriter_LinkRel" },
{ "@id": "urn:solid-server:default:MetadataWriter_LinkRelMetadata" },
{ "@id": "urn:solid-server:default:MetadataWriter_Modified" },
{ "@id": "urn:solid-server:default:MetadataWriter_WacAllow" },
{ "@id": "urn:ldes-server:default:MetadataWriter_Mapped" },
{ "@id": "urn:solid-server:default:MetadataWriter_WwwAuth" }
]
{
"@id": "urn:solid-server:default:MetadataWriter_AllowAccept"
},
{
"@id": "urn:solid-server:default:MetadataWriter_ContentType"
},
{
"@id": "urn:solid-server:default:MetadataWriter_LinkRel"
},
{
"@id": "urn:solid-server:default:MetadataWriter_LinkRelMetadata"
},
{
"@id": "urn:solid-server:default:MetadataWriter_Cookie"
},
{
"@id": "urn:solid-server:default:MetadataWriter_Mapped"
},
{
"@id": "urn:solid-server:default:MetadataWriter_Modified"
},
{
"@id": "urn:solid-server:default:MetadataWriter_Range"
},
{
"@id": "urn:solid-server:default:MetadataWriter_StorageDescription"
},
{
"@id": "urn:solid-server:default:MetadataWriter_WwwAuth"
}
]
}
]
}
]
}
Loading