chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
If you wish to use devcontainers for development in vscode. You will need to rename or create a symlink of this directory to .devcontainer and reload your window. This will trigger the an option to open the code in a container. Once the code is opened in a container you will be able to contribute like normally without having to install all the dependencies on your local system. Also, the development container provides access to your local home directory via the /code directory.
|
||||
|
||||
quick how-to:
|
||||
run this command on linux from the root llmware: ln -s devcontainer .devcontainer
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
|
||||
"name": "LLMWARE Dev",
|
||||
|
||||
// This is the image to use if doing development on only the llmware code base
|
||||
//"image": "provocoai/llmware:dev-01", /
|
||||
// using the dockerComposeFile option allows us to setup
|
||||
// the full env around the llm code base include milvus and mongodb.
|
||||
"dockerComposeFile": "docker-compose.yaml",
|
||||
|
||||
"service": "llmware", // we define the container to connect too
|
||||
|
||||
// update based on individual perference and mount point defined below
|
||||
"workspaceFolder": "/llmware",
|
||||
|
||||
// "remoteUser": "llmware", //used with docker instead of podman
|
||||
// "containerUser": "llmware", // used with docker instead of podman
|
||||
|
||||
// when we close the devcontainer env make sure we clean up after ourselfs
|
||||
"shutdownAction": "stopCompose",
|
||||
|
||||
// needed for podman to keep the id's the same
|
||||
"runArgs": [
|
||||
"--userns=keep-id"
|
||||
],
|
||||
|
||||
// Define the mountpoints into the llmware container.
|
||||
// I use $HOMEDIR/code/provoco as my default codebase and
|
||||
// then set the target to /code so I have access to all my code in /code
|
||||
"mounts" : [
|
||||
"source=${localEnv:HOME}/code/provoco,target=/code,Z,type=bind,consistency=cached"
|
||||
// "source=${localENV:HOME}/.vscode-server,target=/root/.vscode-server,Z,type=bind,consistency=cached"
|
||||
],
|
||||
|
||||
// setup the github cli feature so we can commit within the UI
|
||||
"features": {
|
||||
"ghcr.io/devcontainers/features/github-cli:1": {}
|
||||
},
|
||||
|
||||
"customizations": {
|
||||
"vscode": {
|
||||
"extensions": [
|
||||
"esbenp.prettier-vscode", // prettify the code extension
|
||||
"ms-python.python", //python code extensions
|
||||
"ms-python.vscode-pylance" // vscode python extension
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
{
|
||||
"name": "LLMWARE Dev",
|
||||
//"build": { "dockerfile": "../Dockerfile" },
|
||||
"containerUser": "llmware",
|
||||
"updateRemoteUserUID": true,
|
||||
"image": "provocoai/llmware:dev-01",
|
||||
"remoteUser": "llmware",
|
||||
"runArgs": [
|
||||
"--userns=keep-id:uid=1000,gid=1000"
|
||||
],
|
||||
|
||||
|
||||
// "runArgs": [
|
||||
// "--name",
|
||||
// "${localWorkspaceFolderBasename}", // Container name
|
||||
// "-it",
|
||||
// "-l",
|
||||
// "com.docker.compose.project=devcontainers" // Container group name
|
||||
// ],
|
||||
// you can setup your local directory in the devcontainer here. The mount line is an example and mounts your home directory into the /code directory
|
||||
"mounts" : [
|
||||
"source=/home/harrison/code/provoco,target=/code,type=bind,consistency=cached,Z",
|
||||
"source=/home/harrison/.vscode,target=/root/.vscode,type=bind,consistency=cached,Z"
|
||||
],
|
||||
"customizations": {
|
||||
// Configure properties specific to VS Code.
|
||||
"vscode": {
|
||||
// Add the IDs of extensions you want installed when the container is created.
|
||||
"extensions": [
|
||||
//"mongodb.mongodb-vscode",
|
||||
"ms-python.python"
|
||||
//"ms-azuretools.vscode-docker"
|
||||
]
|
||||
}
|
||||
},
|
||||
"postCreateCommand": "apt-get install ",
|
||||
"features": {}
|
||||
// "features": {
|
||||
// "ghcr.io/devcontainers/features/docker-outside-of-docker:1": {
|
||||
// "dockerDashComposeVersion": "v2"
|
||||
// },
|
||||
// "ghcr.io/devcontainers/features/github-cli:1": {}
|
||||
// },
|
||||
// "customizations": {
|
||||
// "vscode": {
|
||||
// "extensions": [
|
||||
// "esbenp.prettier-vscode", // prettify the code extension
|
||||
// "ms-python.python", //python code extensions
|
||||
// "ms-python.vscode-pylance" // vscode python extension
|
||||
// ]
|
||||
// }
|
||||
// }
|
||||
}
|
||||
@@ -0,0 +1,108 @@
|
||||
version: "3.5"
|
||||
|
||||
services:
|
||||
llmware:
|
||||
container_name: llmware
|
||||
image: provocoai/llmware:dev-01
|
||||
depends_on:
|
||||
- "milvus"
|
||||
- "mongodb"
|
||||
command: sleep infinity
|
||||
network_mode: host
|
||||
|
||||
mongodb:
|
||||
container_name: mongodb
|
||||
image: mongo:5.0.10
|
||||
# To secure MongoDB, uncomment and set the following values
|
||||
# environment:
|
||||
# - MONGO_INITDB_DATABASE=admin
|
||||
# - MONGO_INITDB_ROOT_USERNAME=admin
|
||||
# - MONGO_INITDB_ROOT_PASSWORD=changeme
|
||||
volumes:
|
||||
- llmware-mongodb:/data/db:Z
|
||||
ports:
|
||||
- '27017:27017'
|
||||
|
||||
etcd:
|
||||
container_name: milvus-etcd
|
||||
image: quay.io/coreos/etcd:v3.5.5
|
||||
environment:
|
||||
- ETCD_AUTO_COMPACTION_MODE=revision
|
||||
- ETCD_AUTO_COMPACTION_RETENTION=1000
|
||||
- ETCD_QUOTA_BACKEND_BYTES=4294967296
|
||||
- ETCD_SNAPSHOT_COUNT=50000
|
||||
volumes:
|
||||
- llmware-etcd:/etcd:Z
|
||||
command: etcd -advertise-client-urls=http://127.0.0.1:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd
|
||||
healthcheck:
|
||||
test: ["CMD", "etcdctl", "endpoint", "health"]
|
||||
interval: 30s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
|
||||
minio:
|
||||
container_name: milvus-minio
|
||||
image: minio/minio:RELEASE.2023-03-20T20-16-18Z
|
||||
environment:
|
||||
MINIO_ACCESS_KEY: minioadmin
|
||||
MINIO_SECRET_KEY: minioadmin
|
||||
ports:
|
||||
- "9001:9001"
|
||||
- "9000:9000"
|
||||
volumes:
|
||||
- llmware-minio:/minio_data:Z
|
||||
command: minio server /minio_data --console-address ":9001"
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
|
||||
interval: 30s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
|
||||
milvus:
|
||||
container_name: milvus
|
||||
image: milvusdb/milvus:v2.3.0
|
||||
command: ["milvus", "run", "standalone"]
|
||||
environment:
|
||||
ETCD_ENDPOINTS: etcd:2379
|
||||
MINIO_ADDRESS: minio:9000
|
||||
volumes:
|
||||
- llmware-milvus:/var/lib/milvus:Z
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:9091/healthz"]
|
||||
interval: 30s
|
||||
start_period: 90s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
ports:
|
||||
- "19530:19530"
|
||||
- "9091:9091"
|
||||
depends_on:
|
||||
- "etcd"
|
||||
- "minio"
|
||||
|
||||
|
||||
dev-neo4j:
|
||||
container_name: devneo4j
|
||||
hostname: neo4j
|
||||
image: neo4j:5.15.0-community
|
||||
ports:
|
||||
- 7474:7474
|
||||
- 7687:7687
|
||||
restart: always
|
||||
|
||||
volumes:
|
||||
- $HOME/neo4j/data:/data:Z
|
||||
- $HOME/neo4j/logs:/logs:Z
|
||||
|
||||
environment:
|
||||
- NEO4J_AUTH=none
|
||||
|
||||
volumes:
|
||||
llmware-mongodb:
|
||||
driver: local
|
||||
llmware-etcd:
|
||||
driver: local
|
||||
llmware-minio:
|
||||
driver: local
|
||||
llmware-milvus:
|
||||
driver: local
|
||||
Reference in New Issue
Block a user